MPE Home Metamath Proof Explorer < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  MPE Home  >  Th. List  >  setsstruct2 Structured version   Visualization version   GIF version

Theorem setsstruct2 15943
Description: An extensible structure with a replaced slot is an extensible structure. (Contributed by AV, 14-Nov-2021.)
Assertion
Ref Expression
setsstruct2 (((𝐺 Struct 𝑋𝐸𝑉𝐼 ∈ ℕ) ∧ 𝑌 = ⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩) → (𝐺 sSet ⟨𝐼, 𝐸⟩) Struct 𝑌)

Proof of Theorem setsstruct2
StepHypRef Expression
1 isstruct2 15914 . . . . . . 7 (𝐺 Struct 𝑋 ↔ (𝑋 ∈ ( ≤ ∩ (ℕ × ℕ)) ∧ Fun (𝐺 ∖ {∅}) ∧ dom 𝐺 ⊆ (...‘𝑋)))
2 elin 3829 . . . . . . . . 9 (𝑋 ∈ ( ≤ ∩ (ℕ × ℕ)) ↔ (𝑋 ∈ ≤ ∧ 𝑋 ∈ (ℕ × ℕ)))
3 elxp6 7244 . . . . . . . . . . 11 (𝑋 ∈ (ℕ × ℕ) ↔ (𝑋 = ⟨(1st𝑋), (2nd𝑋)⟩ ∧ ((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ)))
4 eleq1 2718 . . . . . . . . . . . . 13 (𝑋 = ⟨(1st𝑋), (2nd𝑋)⟩ → (𝑋 ∈ ≤ ↔ ⟨(1st𝑋), (2nd𝑋)⟩ ∈ ≤ ))
54adantr 480 . . . . . . . . . . . 12 ((𝑋 = ⟨(1st𝑋), (2nd𝑋)⟩ ∧ ((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ)) → (𝑋 ∈ ≤ ↔ ⟨(1st𝑋), (2nd𝑋)⟩ ∈ ≤ ))
6 simp3 1083 . . . . . . . . . . . . . . . . . . 19 ((((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ) ∧ ⟨(1st𝑋), (2nd𝑋)⟩ ∈ ≤ ∧ 𝐼 ∈ ℕ) → 𝐼 ∈ ℕ)
7 simp1l 1105 . . . . . . . . . . . . . . . . . . 19 ((((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ) ∧ ⟨(1st𝑋), (2nd𝑋)⟩ ∈ ≤ ∧ 𝐼 ∈ ℕ) → (1st𝑋) ∈ ℕ)
86, 7ifcld 4164 . . . . . . . . . . . . . . . . . 18 ((((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ) ∧ ⟨(1st𝑋), (2nd𝑋)⟩ ∈ ≤ ∧ 𝐼 ∈ ℕ) → if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)) ∈ ℕ)
98nnred 11073 . . . . . . . . . . . . . . . . 17 ((((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ) ∧ ⟨(1st𝑋), (2nd𝑋)⟩ ∈ ≤ ∧ 𝐼 ∈ ℕ) → if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)) ∈ ℝ)
106nnred 11073 . . . . . . . . . . . . . . . . 17 ((((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ) ∧ ⟨(1st𝑋), (2nd𝑋)⟩ ∈ ≤ ∧ 𝐼 ∈ ℕ) → 𝐼 ∈ ℝ)
11 simp1r 1106 . . . . . . . . . . . . . . . . . . 19 ((((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ) ∧ ⟨(1st𝑋), (2nd𝑋)⟩ ∈ ≤ ∧ 𝐼 ∈ ℕ) → (2nd𝑋) ∈ ℕ)
1211, 6ifcld 4164 . . . . . . . . . . . . . . . . . 18 ((((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ) ∧ ⟨(1st𝑋), (2nd𝑋)⟩ ∈ ≤ ∧ 𝐼 ∈ ℕ) → if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼) ∈ ℕ)
1312nnred 11073 . . . . . . . . . . . . . . . . 17 ((((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ) ∧ ⟨(1st𝑋), (2nd𝑋)⟩ ∈ ≤ ∧ 𝐼 ∈ ℕ) → if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼) ∈ ℝ)
14 nnre 11065 . . . . . . . . . . . . . . . . . . . . . 22 ((1st𝑋) ∈ ℕ → (1st𝑋) ∈ ℝ)
1514adantr 480 . . . . . . . . . . . . . . . . . . . . 21 (((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ) → (1st𝑋) ∈ ℝ)
16 nnre 11065 . . . . . . . . . . . . . . . . . . . . 21 (𝐼 ∈ ℕ → 𝐼 ∈ ℝ)
1715, 16anim12i 589 . . . . . . . . . . . . . . . . . . . 20 ((((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ) ∧ 𝐼 ∈ ℕ) → ((1st𝑋) ∈ ℝ ∧ 𝐼 ∈ ℝ))
18173adant2 1100 . . . . . . . . . . . . . . . . . . 19 ((((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ) ∧ ⟨(1st𝑋), (2nd𝑋)⟩ ∈ ≤ ∧ 𝐼 ∈ ℕ) → ((1st𝑋) ∈ ℝ ∧ 𝐼 ∈ ℝ))
1918ancomd 466 . . . . . . . . . . . . . . . . . 18 ((((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ) ∧ ⟨(1st𝑋), (2nd𝑋)⟩ ∈ ≤ ∧ 𝐼 ∈ ℕ) → (𝐼 ∈ ℝ ∧ (1st𝑋) ∈ ℝ))
20 min1 12058 . . . . . . . . . . . . . . . . . 18 ((𝐼 ∈ ℝ ∧ (1st𝑋) ∈ ℝ) → if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)) ≤ 𝐼)
2119, 20syl 17 . . . . . . . . . . . . . . . . 17 ((((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ) ∧ ⟨(1st𝑋), (2nd𝑋)⟩ ∈ ≤ ∧ 𝐼 ∈ ℕ) → if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)) ≤ 𝐼)
22 nnre 11065 . . . . . . . . . . . . . . . . . . . . . 22 ((2nd𝑋) ∈ ℕ → (2nd𝑋) ∈ ℝ)
2322adantl 481 . . . . . . . . . . . . . . . . . . . . 21 (((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ) → (2nd𝑋) ∈ ℝ)
2423, 16anim12i 589 . . . . . . . . . . . . . . . . . . . 20 ((((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ) ∧ 𝐼 ∈ ℕ) → ((2nd𝑋) ∈ ℝ ∧ 𝐼 ∈ ℝ))
25243adant2 1100 . . . . . . . . . . . . . . . . . . 19 ((((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ) ∧ ⟨(1st𝑋), (2nd𝑋)⟩ ∈ ≤ ∧ 𝐼 ∈ ℕ) → ((2nd𝑋) ∈ ℝ ∧ 𝐼 ∈ ℝ))
2625ancomd 466 . . . . . . . . . . . . . . . . . 18 ((((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ) ∧ ⟨(1st𝑋), (2nd𝑋)⟩ ∈ ≤ ∧ 𝐼 ∈ ℕ) → (𝐼 ∈ ℝ ∧ (2nd𝑋) ∈ ℝ))
27 max1 12054 . . . . . . . . . . . . . . . . . 18 ((𝐼 ∈ ℝ ∧ (2nd𝑋) ∈ ℝ) → 𝐼 ≤ if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼))
2826, 27syl 17 . . . . . . . . . . . . . . . . 17 ((((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ) ∧ ⟨(1st𝑋), (2nd𝑋)⟩ ∈ ≤ ∧ 𝐼 ∈ ℕ) → 𝐼 ≤ if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼))
299, 10, 13, 21, 28letrd 10232 . . . . . . . . . . . . . . . 16 ((((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ) ∧ ⟨(1st𝑋), (2nd𝑋)⟩ ∈ ≤ ∧ 𝐼 ∈ ℕ) → if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)) ≤ if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼))
30 df-br 4686 . . . . . . . . . . . . . . . 16 (if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)) ≤ if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼) ↔ ⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩ ∈ ≤ )
3129, 30sylib 208 . . . . . . . . . . . . . . 15 ((((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ) ∧ ⟨(1st𝑋), (2nd𝑋)⟩ ∈ ≤ ∧ 𝐼 ∈ ℕ) → ⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩ ∈ ≤ )
328, 12opelxpd 5183 . . . . . . . . . . . . . . 15 ((((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ) ∧ ⟨(1st𝑋), (2nd𝑋)⟩ ∈ ≤ ∧ 𝐼 ∈ ℕ) → ⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩ ∈ (ℕ × ℕ))
3331, 32elind 3831 . . . . . . . . . . . . . 14 ((((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ) ∧ ⟨(1st𝑋), (2nd𝑋)⟩ ∈ ≤ ∧ 𝐼 ∈ ℕ) → ⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩ ∈ ( ≤ ∩ (ℕ × ℕ)))
34333exp 1283 . . . . . . . . . . . . 13 (((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ) → (⟨(1st𝑋), (2nd𝑋)⟩ ∈ ≤ → (𝐼 ∈ ℕ → ⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩ ∈ ( ≤ ∩ (ℕ × ℕ)))))
3534adantl 481 . . . . . . . . . . . 12 ((𝑋 = ⟨(1st𝑋), (2nd𝑋)⟩ ∧ ((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ)) → (⟨(1st𝑋), (2nd𝑋)⟩ ∈ ≤ → (𝐼 ∈ ℕ → ⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩ ∈ ( ≤ ∩ (ℕ × ℕ)))))
365, 35sylbid 230 . . . . . . . . . . 11 ((𝑋 = ⟨(1st𝑋), (2nd𝑋)⟩ ∧ ((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ)) → (𝑋 ∈ ≤ → (𝐼 ∈ ℕ → ⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩ ∈ ( ≤ ∩ (ℕ × ℕ)))))
373, 36sylbi 207 . . . . . . . . . 10 (𝑋 ∈ (ℕ × ℕ) → (𝑋 ∈ ≤ → (𝐼 ∈ ℕ → ⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩ ∈ ( ≤ ∩ (ℕ × ℕ)))))
3837impcom 445 . . . . . . . . 9 ((𝑋 ∈ ≤ ∧ 𝑋 ∈ (ℕ × ℕ)) → (𝐼 ∈ ℕ → ⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩ ∈ ( ≤ ∩ (ℕ × ℕ))))
392, 38sylbi 207 . . . . . . . 8 (𝑋 ∈ ( ≤ ∩ (ℕ × ℕ)) → (𝐼 ∈ ℕ → ⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩ ∈ ( ≤ ∩ (ℕ × ℕ))))
40393ad2ant1 1102 . . . . . . 7 ((𝑋 ∈ ( ≤ ∩ (ℕ × ℕ)) ∧ Fun (𝐺 ∖ {∅}) ∧ dom 𝐺 ⊆ (...‘𝑋)) → (𝐼 ∈ ℕ → ⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩ ∈ ( ≤ ∩ (ℕ × ℕ))))
411, 40sylbi 207 . . . . . 6 (𝐺 Struct 𝑋 → (𝐼 ∈ ℕ → ⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩ ∈ ( ≤ ∩ (ℕ × ℕ))))
4241imp 444 . . . . 5 ((𝐺 Struct 𝑋𝐼 ∈ ℕ) → ⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩ ∈ ( ≤ ∩ (ℕ × ℕ)))
43423adant2 1100 . . . 4 ((𝐺 Struct 𝑋𝐸𝑉𝐼 ∈ ℕ) → ⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩ ∈ ( ≤ ∩ (ℕ × ℕ)))
44 structex 15915 . . . . . . 7 (𝐺 Struct 𝑋𝐺 ∈ V)
45 structn0fun 15916 . . . . . . 7 (𝐺 Struct 𝑋 → Fun (𝐺 ∖ {∅}))
4644, 45jca 553 . . . . . 6 (𝐺 Struct 𝑋 → (𝐺 ∈ V ∧ Fun (𝐺 ∖ {∅})))
47463ad2ant1 1102 . . . . 5 ((𝐺 Struct 𝑋𝐸𝑉𝐼 ∈ ℕ) → (𝐺 ∈ V ∧ Fun (𝐺 ∖ {∅})))
48 simp3 1083 . . . . 5 ((𝐺 Struct 𝑋𝐸𝑉𝐼 ∈ ℕ) → 𝐼 ∈ ℕ)
49 simp2 1082 . . . . 5 ((𝐺 Struct 𝑋𝐸𝑉𝐼 ∈ ℕ) → 𝐸𝑉)
50 setsfun0 15941 . . . . 5 (((𝐺 ∈ V ∧ Fun (𝐺 ∖ {∅})) ∧ (𝐼 ∈ ℕ ∧ 𝐸𝑉)) → Fun ((𝐺 sSet ⟨𝐼, 𝐸⟩) ∖ {∅}))
5147, 48, 49, 50syl12anc 1364 . . . 4 ((𝐺 Struct 𝑋𝐸𝑉𝐼 ∈ ℕ) → Fun ((𝐺 sSet ⟨𝐼, 𝐸⟩) ∖ {∅}))
52443ad2ant1 1102 . . . . . . 7 ((𝐺 Struct 𝑋𝐸𝑉𝐼 ∈ ℕ) → 𝐺 ∈ V)
5352, 49jca 553 . . . . . 6 ((𝐺 Struct 𝑋𝐸𝑉𝐼 ∈ ℕ) → (𝐺 ∈ V ∧ 𝐸𝑉))
54 setsdm 15939 . . . . . 6 ((𝐺 ∈ V ∧ 𝐸𝑉) → dom (𝐺 sSet ⟨𝐼, 𝐸⟩) = (dom 𝐺 ∪ {𝐼}))
5553, 54syl 17 . . . . 5 ((𝐺 Struct 𝑋𝐸𝑉𝐼 ∈ ℕ) → dom (𝐺 sSet ⟨𝐼, 𝐸⟩) = (dom 𝐺 ∪ {𝐼}))
56 fveq2 6229 . . . . . . . . . . . . . . . . 17 (𝑋 = ⟨(1st𝑋), (2nd𝑋)⟩ → (...‘𝑋) = (...‘⟨(1st𝑋), (2nd𝑋)⟩))
57 df-ov 6693 . . . . . . . . . . . . . . . . 17 ((1st𝑋)...(2nd𝑋)) = (...‘⟨(1st𝑋), (2nd𝑋)⟩)
5856, 57syl6eqr 2703 . . . . . . . . . . . . . . . 16 (𝑋 = ⟨(1st𝑋), (2nd𝑋)⟩ → (...‘𝑋) = ((1st𝑋)...(2nd𝑋)))
5958sseq2d 3666 . . . . . . . . . . . . . . 15 (𝑋 = ⟨(1st𝑋), (2nd𝑋)⟩ → (dom 𝐺 ⊆ (...‘𝑋) ↔ dom 𝐺 ⊆ ((1st𝑋)...(2nd𝑋))))
6059adantr 480 . . . . . . . . . . . . . 14 ((𝑋 = ⟨(1st𝑋), (2nd𝑋)⟩ ∧ ((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ)) → (dom 𝐺 ⊆ (...‘𝑋) ↔ dom 𝐺 ⊆ ((1st𝑋)...(2nd𝑋))))
61 df-3an 1056 . . . . . . . . . . . . . . . . . 18 (((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ ∧ 𝐼 ∈ ℕ) ↔ (((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ) ∧ 𝐼 ∈ ℕ))
62 nnz 11437 . . . . . . . . . . . . . . . . . . . . 21 ((1st𝑋) ∈ ℕ → (1st𝑋) ∈ ℤ)
63 nnz 11437 . . . . . . . . . . . . . . . . . . . . 21 ((2nd𝑋) ∈ ℕ → (2nd𝑋) ∈ ℤ)
64 nnz 11437 . . . . . . . . . . . . . . . . . . . . 21 (𝐼 ∈ ℕ → 𝐼 ∈ ℤ)
6562, 63, 643anim123i 1266 . . . . . . . . . . . . . . . . . . . 20 (((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ ∧ 𝐼 ∈ ℕ) → ((1st𝑋) ∈ ℤ ∧ (2nd𝑋) ∈ ℤ ∧ 𝐼 ∈ ℤ))
66 ssfzunsnext 12424 . . . . . . . . . . . . . . . . . . . . 21 ((dom 𝐺 ⊆ ((1st𝑋)...(2nd𝑋)) ∧ ((1st𝑋) ∈ ℤ ∧ (2nd𝑋) ∈ ℤ ∧ 𝐼 ∈ ℤ)) → (dom 𝐺 ∪ {𝐼}) ⊆ (if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋))...if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)))
67 df-ov 6693 . . . . . . . . . . . . . . . . . . . . 21 (if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋))...if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)) = (...‘⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩)
6866, 67syl6sseq 3684 . . . . . . . . . . . . . . . . . . . 20 ((dom 𝐺 ⊆ ((1st𝑋)...(2nd𝑋)) ∧ ((1st𝑋) ∈ ℤ ∧ (2nd𝑋) ∈ ℤ ∧ 𝐼 ∈ ℤ)) → (dom 𝐺 ∪ {𝐼}) ⊆ (...‘⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩))
6965, 68sylan2 490 . . . . . . . . . . . . . . . . . . 19 ((dom 𝐺 ⊆ ((1st𝑋)...(2nd𝑋)) ∧ ((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ ∧ 𝐼 ∈ ℕ)) → (dom 𝐺 ∪ {𝐼}) ⊆ (...‘⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩))
7069ex 449 . . . . . . . . . . . . . . . . . 18 (dom 𝐺 ⊆ ((1st𝑋)...(2nd𝑋)) → (((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ ∧ 𝐼 ∈ ℕ) → (dom 𝐺 ∪ {𝐼}) ⊆ (...‘⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩)))
7161, 70syl5bir 233 . . . . . . . . . . . . . . . . 17 (dom 𝐺 ⊆ ((1st𝑋)...(2nd𝑋)) → ((((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ) ∧ 𝐼 ∈ ℕ) → (dom 𝐺 ∪ {𝐼}) ⊆ (...‘⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩)))
7271expd 451 . . . . . . . . . . . . . . . 16 (dom 𝐺 ⊆ ((1st𝑋)...(2nd𝑋)) → (((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ) → (𝐼 ∈ ℕ → (dom 𝐺 ∪ {𝐼}) ⊆ (...‘⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩))))
7372com12 32 . . . . . . . . . . . . . . 15 (((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ) → (dom 𝐺 ⊆ ((1st𝑋)...(2nd𝑋)) → (𝐼 ∈ ℕ → (dom 𝐺 ∪ {𝐼}) ⊆ (...‘⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩))))
7473adantl 481 . . . . . . . . . . . . . 14 ((𝑋 = ⟨(1st𝑋), (2nd𝑋)⟩ ∧ ((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ)) → (dom 𝐺 ⊆ ((1st𝑋)...(2nd𝑋)) → (𝐼 ∈ ℕ → (dom 𝐺 ∪ {𝐼}) ⊆ (...‘⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩))))
7560, 74sylbid 230 . . . . . . . . . . . . 13 ((𝑋 = ⟨(1st𝑋), (2nd𝑋)⟩ ∧ ((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ)) → (dom 𝐺 ⊆ (...‘𝑋) → (𝐼 ∈ ℕ → (dom 𝐺 ∪ {𝐼}) ⊆ (...‘⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩))))
763, 75sylbi 207 . . . . . . . . . . . 12 (𝑋 ∈ (ℕ × ℕ) → (dom 𝐺 ⊆ (...‘𝑋) → (𝐼 ∈ ℕ → (dom 𝐺 ∪ {𝐼}) ⊆ (...‘⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩))))
7776adantl 481 . . . . . . . . . . 11 ((𝑋 ∈ ≤ ∧ 𝑋 ∈ (ℕ × ℕ)) → (dom 𝐺 ⊆ (...‘𝑋) → (𝐼 ∈ ℕ → (dom 𝐺 ∪ {𝐼}) ⊆ (...‘⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩))))
782, 77sylbi 207 . . . . . . . . . 10 (𝑋 ∈ ( ≤ ∩ (ℕ × ℕ)) → (dom 𝐺 ⊆ (...‘𝑋) → (𝐼 ∈ ℕ → (dom 𝐺 ∪ {𝐼}) ⊆ (...‘⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩))))
7978imp 444 . . . . . . . . 9 ((𝑋 ∈ ( ≤ ∩ (ℕ × ℕ)) ∧ dom 𝐺 ⊆ (...‘𝑋)) → (𝐼 ∈ ℕ → (dom 𝐺 ∪ {𝐼}) ⊆ (...‘⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩)))
80793adant2 1100 . . . . . . . 8 ((𝑋 ∈ ( ≤ ∩ (ℕ × ℕ)) ∧ Fun (𝐺 ∖ {∅}) ∧ dom 𝐺 ⊆ (...‘𝑋)) → (𝐼 ∈ ℕ → (dom 𝐺 ∪ {𝐼}) ⊆ (...‘⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩)))
811, 80sylbi 207 . . . . . . 7 (𝐺 Struct 𝑋 → (𝐼 ∈ ℕ → (dom 𝐺 ∪ {𝐼}) ⊆ (...‘⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩)))
8281imp 444 . . . . . 6 ((𝐺 Struct 𝑋𝐼 ∈ ℕ) → (dom 𝐺 ∪ {𝐼}) ⊆ (...‘⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩))
83823adant2 1100 . . . . 5 ((𝐺 Struct 𝑋𝐸𝑉𝐼 ∈ ℕ) → (dom 𝐺 ∪ {𝐼}) ⊆ (...‘⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩))
8455, 83eqsstrd 3672 . . . 4 ((𝐺 Struct 𝑋𝐸𝑉𝐼 ∈ ℕ) → dom (𝐺 sSet ⟨𝐼, 𝐸⟩) ⊆ (...‘⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩))
85 isstruct2 15914 . . . 4 ((𝐺 sSet ⟨𝐼, 𝐸⟩) Struct ⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩ ↔ (⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩ ∈ ( ≤ ∩ (ℕ × ℕ)) ∧ Fun ((𝐺 sSet ⟨𝐼, 𝐸⟩) ∖ {∅}) ∧ dom (𝐺 sSet ⟨𝐼, 𝐸⟩) ⊆ (...‘⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩)))
8643, 51, 84, 85syl3anbrc 1265 . . 3 ((𝐺 Struct 𝑋𝐸𝑉𝐼 ∈ ℕ) → (𝐺 sSet ⟨𝐼, 𝐸⟩) Struct ⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩)
8786adantr 480 . 2 (((𝐺 Struct 𝑋𝐸𝑉𝐼 ∈ ℕ) ∧ 𝑌 = ⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩) → (𝐺 sSet ⟨𝐼, 𝐸⟩) Struct ⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩)
88 breq2 4689 . . 3 (𝑌 = ⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩ → ((𝐺 sSet ⟨𝐼, 𝐸⟩) Struct 𝑌 ↔ (𝐺 sSet ⟨𝐼, 𝐸⟩) Struct ⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩))
8988adantl 481 . 2 (((𝐺 Struct 𝑋𝐸𝑉𝐼 ∈ ℕ) ∧ 𝑌 = ⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩) → ((𝐺 sSet ⟨𝐼, 𝐸⟩) Struct 𝑌 ↔ (𝐺 sSet ⟨𝐼, 𝐸⟩) Struct ⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩))
9087, 89mpbird 247 1 (((𝐺 Struct 𝑋𝐸𝑉𝐼 ∈ ℕ) ∧ 𝑌 = ⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩) → (𝐺 sSet ⟨𝐼, 𝐸⟩) Struct 𝑌)
Colors of variables: wff setvar class
Syntax hints:  wi 4  wb 196  wa 383  w3a 1054   = wceq 1523  wcel 2030  Vcvv 3231  cdif 3604  cun 3605  cin 3606  wss 3607  c0 3948  ifcif 4119  {csn 4210  cop 4216   class class class wbr 4685   × cxp 5141  dom cdm 5143  Fun wfun 5920  cfv 5926  (class class class)co 6690  1st c1st 7208  2nd c2nd 7209  cr 9973  cle 10113  cn 11058  cz 11415  ...cfz 12364   Struct cstr 15900   sSet csts 15902
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1762  ax-4 1777  ax-5 1879  ax-6 1945  ax-7 1981  ax-8 2032  ax-9 2039  ax-10 2059  ax-11 2074  ax-12 2087  ax-13 2282  ax-ext 2631  ax-sep 4814  ax-nul 4822  ax-pow 4873  ax-pr 4936  ax-un 6991  ax-cnex 10030  ax-resscn 10031  ax-1cn 10032  ax-icn 10033  ax-addcl 10034  ax-addrcl 10035  ax-mulcl 10036  ax-mulrcl 10037  ax-mulcom 10038  ax-addass 10039  ax-mulass 10040  ax-distr 10041  ax-i2m1 10042  ax-1ne0 10043  ax-1rid 10044  ax-rnegex 10045  ax-rrecex 10046  ax-cnre 10047  ax-pre-lttri 10048  ax-pre-lttrn 10049  ax-pre-ltadd 10050  ax-pre-mulgt0 10051
This theorem depends on definitions:  df-bi 197  df-or 384  df-an 385  df-3or 1055  df-3an 1056  df-tru 1526  df-ex 1745  df-nf 1750  df-sb 1938  df-eu 2502  df-mo 2503  df-clab 2638  df-cleq 2644  df-clel 2647  df-nfc 2782  df-ne 2824  df-nel 2927  df-ral 2946  df-rex 2947  df-reu 2948  df-rab 2950  df-v 3233  df-sbc 3469  df-csb 3567  df-dif 3610  df-un 3612  df-in 3614  df-ss 3621  df-pss 3623  df-nul 3949  df-if 4120  df-pw 4193  df-sn 4211  df-pr 4213  df-tp 4215  df-op 4217  df-uni 4469  df-int 4508  df-iun 4554  df-br 4686  df-opab 4746  df-mpt 4763  df-tr 4786  df-id 5053  df-eprel 5058  df-po 5064  df-so 5065  df-fr 5102  df-we 5104  df-xp 5149  df-rel 5150  df-cnv 5151  df-co 5152  df-dm 5153  df-rn 5154  df-res 5155  df-ima 5156  df-pred 5718  df-ord 5764  df-on 5765  df-lim 5766  df-suc 5767  df-iota 5889  df-fun 5928  df-fn 5929  df-f 5930  df-f1 5931  df-fo 5932  df-f1o 5933  df-fv 5934  df-riota 6651  df-ov 6693  df-oprab 6694  df-mpt2 6695  df-om 7108  df-1st 7210  df-2nd 7211  df-wrecs 7452  df-recs 7513  df-rdg 7551  df-1o 7605  df-oadd 7609  df-er 7787  df-en 7998  df-dom 7999  df-sdom 8000  df-fin 8001  df-pnf 10114  df-mnf 10115  df-xr 10116  df-ltxr 10117  df-le 10118  df-sub 10306  df-neg 10307  df-nn 11059  df-n0 11331  df-z 11416  df-uz 11726  df-fz 12365  df-struct 15906  df-sets 15911
This theorem is referenced by:  setsexstruct2  15944  setsstruct  15945
  Copyright terms: Public domain W3C validator