Metamath Proof Explorer


Theorem safesnsupfiss

Description: If B is a finite subset of ordered class A , we can safely create a small subset with the same largest element and upper bound, if any. (Contributed by RP, 1-Sep-2024)

Ref Expression
Hypotheses safesnsupfiss.small ( 𝜑 → ( 𝑂 = ∅ ∨ 𝑂 = 1o ) )
safesnsupfiss.finite ( 𝜑𝐵 ∈ Fin )
safesnsupfiss.subset ( 𝜑𝐵𝐴 )
safesnsupfiss.ordered ( 𝜑𝑅 Or 𝐴 )
Assertion safesnsupfiss ( 𝜑 → if ( 𝑂𝐵 , { sup ( 𝐵 , 𝐴 , 𝑅 ) } , 𝐵 ) ⊆ 𝐵 )

Proof

Step Hyp Ref Expression
1 safesnsupfiss.small ( 𝜑 → ( 𝑂 = ∅ ∨ 𝑂 = 1o ) )
2 safesnsupfiss.finite ( 𝜑𝐵 ∈ Fin )
3 safesnsupfiss.subset ( 𝜑𝐵𝐴 )
4 safesnsupfiss.ordered ( 𝜑𝑅 Or 𝐴 )
5 elif ( 𝑥 ∈ if ( 𝑂𝐵 , { sup ( 𝐵 , 𝐴 , 𝑅 ) } , 𝐵 ) ↔ ( ( 𝑂𝐵𝑥 ∈ { sup ( 𝐵 , 𝐴 , 𝑅 ) } ) ∨ ( ¬ 𝑂𝐵𝑥𝐵 ) ) )
6 elsni ( 𝑥 ∈ { sup ( 𝐵 , 𝐴 , 𝑅 ) } → 𝑥 = sup ( 𝐵 , 𝐴 , 𝑅 ) )
7 simpr ( ( ( 𝜑𝑂𝐵 ) ∧ 𝑥 = sup ( 𝐵 , 𝐴 , 𝑅 ) ) → 𝑥 = sup ( 𝐵 , 𝐴 , 𝑅 ) )
8 4 adantr ( ( 𝜑𝑂𝐵 ) → 𝑅 Or 𝐴 )
9 2 adantr ( ( 𝜑𝑂𝐵 ) → 𝐵 ∈ Fin )
10 simpr ( ( 𝜑𝑂𝐵 ) → 𝑂𝐵 )
11 0elon ∅ ∈ On
12 eleq1 ( 𝑂 = ∅ → ( 𝑂 ∈ On ↔ ∅ ∈ On ) )
13 11 12 mpbiri ( 𝑂 = ∅ → 𝑂 ∈ On )
14 1on 1o ∈ On
15 eleq1 ( 𝑂 = 1o → ( 𝑂 ∈ On ↔ 1o ∈ On ) )
16 14 15 mpbiri ( 𝑂 = 1o𝑂 ∈ On )
17 13 16 jaoi ( ( 𝑂 = ∅ ∨ 𝑂 = 1o ) → 𝑂 ∈ On )
18 1 17 syl ( 𝜑𝑂 ∈ On )
19 18 adantr ( ( 𝜑𝑂𝐵 ) → 𝑂 ∈ On )
20 10 19 sdomne0d ( ( 𝜑𝑂𝐵 ) → 𝐵 ≠ ∅ )
21 3 adantr ( ( 𝜑𝑂𝐵 ) → 𝐵𝐴 )
22 fisupcl ( ( 𝑅 Or 𝐴 ∧ ( 𝐵 ∈ Fin ∧ 𝐵 ≠ ∅ ∧ 𝐵𝐴 ) ) → sup ( 𝐵 , 𝐴 , 𝑅 ) ∈ 𝐵 )
23 8 9 20 21 22 syl13anc ( ( 𝜑𝑂𝐵 ) → sup ( 𝐵 , 𝐴 , 𝑅 ) ∈ 𝐵 )
24 23 adantr ( ( ( 𝜑𝑂𝐵 ) ∧ 𝑥 = sup ( 𝐵 , 𝐴 , 𝑅 ) ) → sup ( 𝐵 , 𝐴 , 𝑅 ) ∈ 𝐵 )
25 7 24 eqeltrd ( ( ( 𝜑𝑂𝐵 ) ∧ 𝑥 = sup ( 𝐵 , 𝐴 , 𝑅 ) ) → 𝑥𝐵 )
26 25 ex ( ( 𝜑𝑂𝐵 ) → ( 𝑥 = sup ( 𝐵 , 𝐴 , 𝑅 ) → 𝑥𝐵 ) )
27 6 26 syl5 ( ( 𝜑𝑂𝐵 ) → ( 𝑥 ∈ { sup ( 𝐵 , 𝐴 , 𝑅 ) } → 𝑥𝐵 ) )
28 27 expimpd ( 𝜑 → ( ( 𝑂𝐵𝑥 ∈ { sup ( 𝐵 , 𝐴 , 𝑅 ) } ) → 𝑥𝐵 ) )
29 simpr ( ( ¬ 𝑂𝐵𝑥𝐵 ) → 𝑥𝐵 )
30 29 a1i ( 𝜑 → ( ( ¬ 𝑂𝐵𝑥𝐵 ) → 𝑥𝐵 ) )
31 28 30 jaod ( 𝜑 → ( ( ( 𝑂𝐵𝑥 ∈ { sup ( 𝐵 , 𝐴 , 𝑅 ) } ) ∨ ( ¬ 𝑂𝐵𝑥𝐵 ) ) → 𝑥𝐵 ) )
32 5 31 biimtrid ( 𝜑 → ( 𝑥 ∈ if ( 𝑂𝐵 , { sup ( 𝐵 , 𝐴 , 𝑅 ) } , 𝐵 ) → 𝑥𝐵 ) )
33 32 ssrdv ( 𝜑 → if ( 𝑂𝐵 , { sup ( 𝐵 , 𝐴 , 𝑅 ) } , 𝐵 ) ⊆ 𝐵 )