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

Theorem setsstruct2 15836
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 15809 . . . . . . 7 (𝐺 Struct 𝑋 ↔ (𝑋 ∈ ( ≤ ∩ (ℕ × ℕ)) ∧ Fun (𝐺 ∖ {∅}) ∧ dom 𝐺 ⊆ (...‘𝑋)))
2 elin 3780 . . . . . . . . 9 (𝑋 ∈ ( ≤ ∩ (ℕ × ℕ)) ↔ (𝑋 ∈ ≤ ∧ 𝑋 ∈ (ℕ × ℕ)))
3 elxp6 7160 . . . . . . . . . . 11 (𝑋 ∈ (ℕ × ℕ) ↔ (𝑋 = ⟨(1st𝑋), (2nd𝑋)⟩ ∧ ((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ)))
4 eleq1 2686 . . . . . . . . . . . . 13 (𝑋 = ⟨(1st𝑋), (2nd𝑋)⟩ → (𝑋 ∈ ≤ ↔ ⟨(1st𝑋), (2nd𝑋)⟩ ∈ ≤ ))
54adantr 481 . . . . . . . . . . . 12 ((𝑋 = ⟨(1st𝑋), (2nd𝑋)⟩ ∧ ((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ)) → (𝑋 ∈ ≤ ↔ ⟨(1st𝑋), (2nd𝑋)⟩ ∈ ≤ ))
6 simp3 1061 . . . . . . . . . . . . . . . . . . 19 ((((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ) ∧ ⟨(1st𝑋), (2nd𝑋)⟩ ∈ ≤ ∧ 𝐼 ∈ ℕ) → 𝐼 ∈ ℕ)
7 simp1l 1083 . . . . . . . . . . . . . . . . . . 19 ((((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ) ∧ ⟨(1st𝑋), (2nd𝑋)⟩ ∈ ≤ ∧ 𝐼 ∈ ℕ) → (1st𝑋) ∈ ℕ)
86, 7ifcld 4109 . . . . . . . . . . . . . . . . . 18 ((((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ) ∧ ⟨(1st𝑋), (2nd𝑋)⟩ ∈ ≤ ∧ 𝐼 ∈ ℕ) → if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)) ∈ ℕ)
98nnred 10995 . . . . . . . . . . . . . . . . 17 ((((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ) ∧ ⟨(1st𝑋), (2nd𝑋)⟩ ∈ ≤ ∧ 𝐼 ∈ ℕ) → if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)) ∈ ℝ)
106nnred 10995 . . . . . . . . . . . . . . . . 17 ((((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ) ∧ ⟨(1st𝑋), (2nd𝑋)⟩ ∈ ≤ ∧ 𝐼 ∈ ℕ) → 𝐼 ∈ ℝ)
11 simp1r 1084 . . . . . . . . . . . . . . . . . . 19 ((((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ) ∧ ⟨(1st𝑋), (2nd𝑋)⟩ ∈ ≤ ∧ 𝐼 ∈ ℕ) → (2nd𝑋) ∈ ℕ)
1211, 6ifcld 4109 . . . . . . . . . . . . . . . . . 18 ((((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ) ∧ ⟨(1st𝑋), (2nd𝑋)⟩ ∈ ≤ ∧ 𝐼 ∈ ℕ) → if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼) ∈ ℕ)
1312nnred 10995 . . . . . . . . . . . . . . . . 17 ((((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ) ∧ ⟨(1st𝑋), (2nd𝑋)⟩ ∈ ≤ ∧ 𝐼 ∈ ℕ) → if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼) ∈ ℝ)
14 nnre 10987 . . . . . . . . . . . . . . . . . . . . . 22 ((1st𝑋) ∈ ℕ → (1st𝑋) ∈ ℝ)
1514adantr 481 . . . . . . . . . . . . . . . . . . . . 21 (((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ) → (1st𝑋) ∈ ℝ)
16 nnre 10987 . . . . . . . . . . . . . . . . . . . . 21 (𝐼 ∈ ℕ → 𝐼 ∈ ℝ)
1715, 16anim12i 589 . . . . . . . . . . . . . . . . . . . 20 ((((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ) ∧ 𝐼 ∈ ℕ) → ((1st𝑋) ∈ ℝ ∧ 𝐼 ∈ ℝ))
18173adant2 1078 . . . . . . . . . . . . . . . . . . 19 ((((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ) ∧ ⟨(1st𝑋), (2nd𝑋)⟩ ∈ ≤ ∧ 𝐼 ∈ ℕ) → ((1st𝑋) ∈ ℝ ∧ 𝐼 ∈ ℝ))
1918ancomd 467 . . . . . . . . . . . . . . . . . 18 ((((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ) ∧ ⟨(1st𝑋), (2nd𝑋)⟩ ∈ ≤ ∧ 𝐼 ∈ ℕ) → (𝐼 ∈ ℝ ∧ (1st𝑋) ∈ ℝ))
20 min1 11979 . . . . . . . . . . . . . . . . . 18 ((𝐼 ∈ ℝ ∧ (1st𝑋) ∈ ℝ) → if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)) ≤ 𝐼)
2119, 20syl 17 . . . . . . . . . . . . . . . . 17 ((((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ) ∧ ⟨(1st𝑋), (2nd𝑋)⟩ ∈ ≤ ∧ 𝐼 ∈ ℕ) → if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)) ≤ 𝐼)
22 nnre 10987 . . . . . . . . . . . . . . . . . . . . . 22 ((2nd𝑋) ∈ ℕ → (2nd𝑋) ∈ ℝ)
2322adantl 482 . . . . . . . . . . . . . . . . . . . . 21 (((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ) → (2nd𝑋) ∈ ℝ)
2423, 16anim12i 589 . . . . . . . . . . . . . . . . . . . 20 ((((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ) ∧ 𝐼 ∈ ℕ) → ((2nd𝑋) ∈ ℝ ∧ 𝐼 ∈ ℝ))
25243adant2 1078 . . . . . . . . . . . . . . . . . . 19 ((((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ) ∧ ⟨(1st𝑋), (2nd𝑋)⟩ ∈ ≤ ∧ 𝐼 ∈ ℕ) → ((2nd𝑋) ∈ ℝ ∧ 𝐼 ∈ ℝ))
2625ancomd 467 . . . . . . . . . . . . . . . . . 18 ((((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ) ∧ ⟨(1st𝑋), (2nd𝑋)⟩ ∈ ≤ ∧ 𝐼 ∈ ℕ) → (𝐼 ∈ ℝ ∧ (2nd𝑋) ∈ ℝ))
27 max1 11975 . . . . . . . . . . . . . . . . . 18 ((𝐼 ∈ ℝ ∧ (2nd𝑋) ∈ ℝ) → 𝐼 ≤ if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼))
2826, 27syl 17 . . . . . . . . . . . . . . . . 17 ((((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ) ∧ ⟨(1st𝑋), (2nd𝑋)⟩ ∈ ≤ ∧ 𝐼 ∈ ℕ) → 𝐼 ≤ if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼))
299, 10, 13, 21, 28letrd 10154 . . . . . . . . . . . . . . . 16 ((((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ) ∧ ⟨(1st𝑋), (2nd𝑋)⟩ ∈ ≤ ∧ 𝐼 ∈ ℕ) → if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)) ≤ if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼))
30 df-br 4624 . . . . . . . . . . . . . . . 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 5119 . . . . . . . . . . . . . . 15 ((((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ) ∧ ⟨(1st𝑋), (2nd𝑋)⟩ ∈ ≤ ∧ 𝐼 ∈ ℕ) → ⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩ ∈ (ℕ × ℕ))
3331, 32elind 3782 . . . . . . . . . . . . . 14 ((((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ) ∧ ⟨(1st𝑋), (2nd𝑋)⟩ ∈ ≤ ∧ 𝐼 ∈ ℕ) → ⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩ ∈ ( ≤ ∩ (ℕ × ℕ)))
34333exp 1261 . . . . . . . . . . . . 13 (((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ) → (⟨(1st𝑋), (2nd𝑋)⟩ ∈ ≤ → (𝐼 ∈ ℕ → ⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩ ∈ ( ≤ ∩ (ℕ × ℕ)))))
3534adantl 482 . . . . . . . . . . . 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 446 . . . . . . . . 9 ((𝑋 ∈ ≤ ∧ 𝑋 ∈ (ℕ × ℕ)) → (𝐼 ∈ ℕ → ⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩ ∈ ( ≤ ∩ (ℕ × ℕ))))
392, 38sylbi 207 . . . . . . . 8 (𝑋 ∈ ( ≤ ∩ (ℕ × ℕ)) → (𝐼 ∈ ℕ → ⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩ ∈ ( ≤ ∩ (ℕ × ℕ))))
40393ad2ant1 1080 . . . . . . 7 ((𝑋 ∈ ( ≤ ∩ (ℕ × ℕ)) ∧ Fun (𝐺 ∖ {∅}) ∧ dom 𝐺 ⊆ (...‘𝑋)) → (𝐼 ∈ ℕ → ⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩ ∈ ( ≤ ∩ (ℕ × ℕ))))
411, 40sylbi 207 . . . . . 6 (𝐺 Struct 𝑋 → (𝐼 ∈ ℕ → ⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩ ∈ ( ≤ ∩ (ℕ × ℕ))))
4241imp 445 . . . . 5 ((𝐺 Struct 𝑋𝐼 ∈ ℕ) → ⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩ ∈ ( ≤ ∩ (ℕ × ℕ)))
43423adant2 1078 . . . 4 ((𝐺 Struct 𝑋𝐸𝑉𝐼 ∈ ℕ) → ⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩ ∈ ( ≤ ∩ (ℕ × ℕ)))
44 structex 15810 . . . . . . 7 (𝐺 Struct 𝑋𝐺 ∈ V)
45 structn0fun 15811 . . . . . . 7 (𝐺 Struct 𝑋 → Fun (𝐺 ∖ {∅}))
4644, 45jca 554 . . . . . 6 (𝐺 Struct 𝑋 → (𝐺 ∈ V ∧ Fun (𝐺 ∖ {∅})))
47463ad2ant1 1080 . . . . 5 ((𝐺 Struct 𝑋𝐸𝑉𝐼 ∈ ℕ) → (𝐺 ∈ V ∧ Fun (𝐺 ∖ {∅})))
48 simp3 1061 . . . . 5 ((𝐺 Struct 𝑋𝐸𝑉𝐼 ∈ ℕ) → 𝐼 ∈ ℕ)
49 simp2 1060 . . . . 5 ((𝐺 Struct 𝑋𝐸𝑉𝐼 ∈ ℕ) → 𝐸𝑉)
50 setsfun0 15834 . . . . 5 (((𝐺 ∈ V ∧ Fun (𝐺 ∖ {∅})) ∧ (𝐼 ∈ ℕ ∧ 𝐸𝑉)) → Fun ((𝐺 sSet ⟨𝐼, 𝐸⟩) ∖ {∅}))
5147, 48, 49, 50syl12anc 1321 . . . 4 ((𝐺 Struct 𝑋𝐸𝑉𝐼 ∈ ℕ) → Fun ((𝐺 sSet ⟨𝐼, 𝐸⟩) ∖ {∅}))
52443ad2ant1 1080 . . . . . . 7 ((𝐺 Struct 𝑋𝐸𝑉𝐼 ∈ ℕ) → 𝐺 ∈ V)
5352, 49jca 554 . . . . . 6 ((𝐺 Struct 𝑋𝐸𝑉𝐼 ∈ ℕ) → (𝐺 ∈ V ∧ 𝐸𝑉))
54 setsdm 15832 . . . . . 6 ((𝐺 ∈ V ∧ 𝐸𝑉) → dom (𝐺 sSet ⟨𝐼, 𝐸⟩) = (dom 𝐺 ∪ {𝐼}))
5553, 54syl 17 . . . . 5 ((𝐺 Struct 𝑋𝐸𝑉𝐼 ∈ ℕ) → dom (𝐺 sSet ⟨𝐼, 𝐸⟩) = (dom 𝐺 ∪ {𝐼}))
56 fveq2 6158 . . . . . . . . . . . . . . . . 17 (𝑋 = ⟨(1st𝑋), (2nd𝑋)⟩ → (...‘𝑋) = (...‘⟨(1st𝑋), (2nd𝑋)⟩))
57 df-ov 6618 . . . . . . . . . . . . . . . . 17 ((1st𝑋)...(2nd𝑋)) = (...‘⟨(1st𝑋), (2nd𝑋)⟩)
5856, 57syl6eqr 2673 . . . . . . . . . . . . . . . 16 (𝑋 = ⟨(1st𝑋), (2nd𝑋)⟩ → (...‘𝑋) = ((1st𝑋)...(2nd𝑋)))
5958sseq2d 3618 . . . . . . . . . . . . . . 15 (𝑋 = ⟨(1st𝑋), (2nd𝑋)⟩ → (dom 𝐺 ⊆ (...‘𝑋) ↔ dom 𝐺 ⊆ ((1st𝑋)...(2nd𝑋))))
6059adantr 481 . . . . . . . . . . . . . 14 ((𝑋 = ⟨(1st𝑋), (2nd𝑋)⟩ ∧ ((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ)) → (dom 𝐺 ⊆ (...‘𝑋) ↔ dom 𝐺 ⊆ ((1st𝑋)...(2nd𝑋))))
61 df-3an 1038 . . . . . . . . . . . . . . . . . 18 (((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ ∧ 𝐼 ∈ ℕ) ↔ (((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ) ∧ 𝐼 ∈ ℕ))
62 nnz 11359 . . . . . . . . . . . . . . . . . . . . 21 ((1st𝑋) ∈ ℕ → (1st𝑋) ∈ ℤ)
63 nnz 11359 . . . . . . . . . . . . . . . . . . . . 21 ((2nd𝑋) ∈ ℕ → (2nd𝑋) ∈ ℤ)
64 nnz 11359 . . . . . . . . . . . . . . . . . . . . 21 (𝐼 ∈ ℕ → 𝐼 ∈ ℤ)
6562, 63, 643anim123i 1245 . . . . . . . . . . . . . . . . . . . 20 (((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ ∧ 𝐼 ∈ ℕ) → ((1st𝑋) ∈ ℤ ∧ (2nd𝑋) ∈ ℤ ∧ 𝐼 ∈ ℤ))
66 ssfzunsnext 12344 . . . . . . . . . . . . . . . . . . . . 21 ((dom 𝐺 ⊆ ((1st𝑋)...(2nd𝑋)) ∧ ((1st𝑋) ∈ ℤ ∧ (2nd𝑋) ∈ ℤ ∧ 𝐼 ∈ ℤ)) → (dom 𝐺 ∪ {𝐼}) ⊆ (if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋))...if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)))
67 df-ov 6618 . . . . . . . . . . . . . . . . . . . . 21 (if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋))...if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)) = (...‘⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩)
6866, 67syl6sseq 3636 . . . . . . . . . . . . . . . . . . . 20 ((dom 𝐺 ⊆ ((1st𝑋)...(2nd𝑋)) ∧ ((1st𝑋) ∈ ℤ ∧ (2nd𝑋) ∈ ℤ ∧ 𝐼 ∈ ℤ)) → (dom 𝐺 ∪ {𝐼}) ⊆ (...‘⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩))
6965, 68sylan2 491 . . . . . . . . . . . . . . . . . . 19 ((dom 𝐺 ⊆ ((1st𝑋)...(2nd𝑋)) ∧ ((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ ∧ 𝐼 ∈ ℕ)) → (dom 𝐺 ∪ {𝐼}) ⊆ (...‘⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩))
7069ex 450 . . . . . . . . . . . . . . . . . 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 452 . . . . . . . . . . . . . . . 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 482 . . . . . . . . . . . . . 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 482 . . . . . . . . . . 11 ((𝑋 ∈ ≤ ∧ 𝑋 ∈ (ℕ × ℕ)) → (dom 𝐺 ⊆ (...‘𝑋) → (𝐼 ∈ ℕ → (dom 𝐺 ∪ {𝐼}) ⊆ (...‘⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩))))
782, 77sylbi 207 . . . . . . . . . 10 (𝑋 ∈ ( ≤ ∩ (ℕ × ℕ)) → (dom 𝐺 ⊆ (...‘𝑋) → (𝐼 ∈ ℕ → (dom 𝐺 ∪ {𝐼}) ⊆ (...‘⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩))))
7978imp 445 . . . . . . . . 9 ((𝑋 ∈ ( ≤ ∩ (ℕ × ℕ)) ∧ dom 𝐺 ⊆ (...‘𝑋)) → (𝐼 ∈ ℕ → (dom 𝐺 ∪ {𝐼}) ⊆ (...‘⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩)))
80793adant2 1078 . . . . . . . 8 ((𝑋 ∈ ( ≤ ∩ (ℕ × ℕ)) ∧ Fun (𝐺 ∖ {∅}) ∧ dom 𝐺 ⊆ (...‘𝑋)) → (𝐼 ∈ ℕ → (dom 𝐺 ∪ {𝐼}) ⊆ (...‘⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩)))
811, 80sylbi 207 . . . . . . 7 (𝐺 Struct 𝑋 → (𝐼 ∈ ℕ → (dom 𝐺 ∪ {𝐼}) ⊆ (...‘⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩)))
8281imp 445 . . . . . 6 ((𝐺 Struct 𝑋𝐼 ∈ ℕ) → (dom 𝐺 ∪ {𝐼}) ⊆ (...‘⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩))
83823adant2 1078 . . . . 5 ((𝐺 Struct 𝑋𝐸𝑉𝐼 ∈ ℕ) → (dom 𝐺 ∪ {𝐼}) ⊆ (...‘⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩))
8455, 83eqsstrd 3624 . . . 4 ((𝐺 Struct 𝑋𝐸𝑉𝐼 ∈ ℕ) → dom (𝐺 sSet ⟨𝐼, 𝐸⟩) ⊆ (...‘⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩))
85 isstruct2 15809 . . . 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 1244 . . 3 ((𝐺 Struct 𝑋𝐸𝑉𝐼 ∈ ℕ) → (𝐺 sSet ⟨𝐼, 𝐸⟩) Struct ⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩)
8786adantr 481 . 2 (((𝐺 Struct 𝑋𝐸𝑉𝐼 ∈ ℕ) ∧ 𝑌 = ⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩) → (𝐺 sSet ⟨𝐼, 𝐸⟩) Struct ⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩)
88 breq2 4627 . . 3 (𝑌 = ⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩ → ((𝐺 sSet ⟨𝐼, 𝐸⟩) Struct 𝑌 ↔ (𝐺 sSet ⟨𝐼, 𝐸⟩) Struct ⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩))
8988adantl 482 . 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 384  w3a 1036   = wceq 1480  wcel 1987  Vcvv 3190  cdif 3557  cun 3558  cin 3559  wss 3560  c0 3897  ifcif 4064  {csn 4155  cop 4161   class class class wbr 4623   × cxp 5082  dom cdm 5084  Fun wfun 5851  cfv 5857  (class class class)co 6615  1st c1st 7126  2nd c2nd 7127  cr 9895  cle 10035  cn 10980  cz 11337  ...cfz 12284   Struct cstr 15796   sSet csts 15798
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1719  ax-4 1734  ax-5 1836  ax-6 1885  ax-7 1932  ax-8 1989  ax-9 1996  ax-10 2016  ax-11 2031  ax-12 2044  ax-13 2245  ax-ext 2601  ax-sep 4751  ax-nul 4759  ax-pow 4813  ax-pr 4877  ax-un 6914  ax-cnex 9952  ax-resscn 9953  ax-1cn 9954  ax-icn 9955  ax-addcl 9956  ax-addrcl 9957  ax-mulcl 9958  ax-mulrcl 9959  ax-mulcom 9960  ax-addass 9961  ax-mulass 9962  ax-distr 9963  ax-i2m1 9964  ax-1ne0 9965  ax-1rid 9966  ax-rnegex 9967  ax-rrecex 9968  ax-cnre 9969  ax-pre-lttri 9970  ax-pre-lttrn 9971  ax-pre-ltadd 9972  ax-pre-mulgt0 9973
This theorem depends on definitions:  df-bi 197  df-or 385  df-an 386  df-3or 1037  df-3an 1038  df-tru 1483  df-ex 1702  df-nf 1707  df-sb 1878  df-eu 2473  df-mo 2474  df-clab 2608  df-cleq 2614  df-clel 2617  df-nfc 2750  df-ne 2791  df-nel 2894  df-ral 2913  df-rex 2914  df-reu 2915  df-rab 2917  df-v 3192  df-sbc 3423  df-csb 3520  df-dif 3563  df-un 3565  df-in 3567  df-ss 3574  df-pss 3576  df-nul 3898  df-if 4065  df-pw 4138  df-sn 4156  df-pr 4158  df-tp 4160  df-op 4162  df-uni 4410  df-int 4448  df-iun 4494  df-br 4624  df-opab 4684  df-mpt 4685  df-tr 4723  df-eprel 4995  df-id 4999  df-po 5005  df-so 5006  df-fr 5043  df-we 5045  df-xp 5090  df-rel 5091  df-cnv 5092  df-co 5093  df-dm 5094  df-rn 5095  df-res 5096  df-ima 5097  df-pred 5649  df-ord 5695  df-on 5696  df-lim 5697  df-suc 5698  df-iota 5820  df-fun 5859  df-fn 5860  df-f 5861  df-f1 5862  df-fo 5863  df-f1o 5864  df-fv 5865  df-riota 6576  df-ov 6618  df-oprab 6619  df-mpt2 6620  df-om 7028  df-1st 7128  df-2nd 7129  df-wrecs 7367  df-recs 7428  df-rdg 7466  df-1o 7520  df-oadd 7524  df-er 7702  df-en 7916  df-dom 7917  df-sdom 7918  df-fin 7919  df-pnf 10036  df-mnf 10037  df-xr 10038  df-ltxr 10039  df-le 10040  df-sub 10228  df-neg 10229  df-nn 10981  df-n0 11253  df-z 11338  df-uz 11648  df-fz 12285  df-struct 15802  df-sets 15806
This theorem is referenced by:  setsexstruct2  15837  setsstruct  15838
  Copyright terms: Public domain W3C validator