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

Theorem setsstruct2 17091
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 17066 . . . . . . 7 (𝐺 Struct 𝑋 ↔ (𝑋 ∈ ( ≤ ∩ (ℕ × ℕ)) ∧ Fun (𝐺 ∖ {∅}) ∧ dom 𝐺 ⊆ (...‘𝑋)))
2 elin 3913 . . . . . . . . 9 (𝑋 ∈ ( ≤ ∩ (ℕ × ℕ)) ↔ (𝑋 ∈ ≤ ∧ 𝑋 ∈ (ℕ × ℕ)))
3 elxp6 7961 . . . . . . . . . . 11 (𝑋 ∈ (ℕ × ℕ) ↔ (𝑋 = ⟨(1st𝑋), (2nd𝑋)⟩ ∧ ((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ)))
4 eleq1 2819 . . . . . . . . . . . . 13 (𝑋 = ⟨(1st𝑋), (2nd𝑋)⟩ → (𝑋 ∈ ≤ ↔ ⟨(1st𝑋), (2nd𝑋)⟩ ∈ ≤ ))
54adantr 480 . . . . . . . . . . . 12 ((𝑋 = ⟨(1st𝑋), (2nd𝑋)⟩ ∧ ((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ)) → (𝑋 ∈ ≤ ↔ ⟨(1st𝑋), (2nd𝑋)⟩ ∈ ≤ ))
6 simp3 1138 . . . . . . . . . . . . . . . . . . 19 ((((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ) ∧ ⟨(1st𝑋), (2nd𝑋)⟩ ∈ ≤ ∧ 𝐼 ∈ ℕ) → 𝐼 ∈ ℕ)
7 simp1l 1198 . . . . . . . . . . . . . . . . . . 19 ((((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ) ∧ ⟨(1st𝑋), (2nd𝑋)⟩ ∈ ≤ ∧ 𝐼 ∈ ℕ) → (1st𝑋) ∈ ℕ)
86, 7ifcld 4521 . . . . . . . . . . . . . . . . . 18 ((((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ) ∧ ⟨(1st𝑋), (2nd𝑋)⟩ ∈ ≤ ∧ 𝐼 ∈ ℕ) → if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)) ∈ ℕ)
98nnred 12146 . . . . . . . . . . . . . . . . 17 ((((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ) ∧ ⟨(1st𝑋), (2nd𝑋)⟩ ∈ ≤ ∧ 𝐼 ∈ ℕ) → if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)) ∈ ℝ)
106nnred 12146 . . . . . . . . . . . . . . . . 17 ((((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ) ∧ ⟨(1st𝑋), (2nd𝑋)⟩ ∈ ≤ ∧ 𝐼 ∈ ℕ) → 𝐼 ∈ ℝ)
11 simp1r 1199 . . . . . . . . . . . . . . . . . . 19 ((((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ) ∧ ⟨(1st𝑋), (2nd𝑋)⟩ ∈ ≤ ∧ 𝐼 ∈ ℕ) → (2nd𝑋) ∈ ℕ)
1211, 6ifcld 4521 . . . . . . . . . . . . . . . . . 18 ((((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ) ∧ ⟨(1st𝑋), (2nd𝑋)⟩ ∈ ≤ ∧ 𝐼 ∈ ℕ) → if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼) ∈ ℕ)
1312nnred 12146 . . . . . . . . . . . . . . . . 17 ((((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ) ∧ ⟨(1st𝑋), (2nd𝑋)⟩ ∈ ≤ ∧ 𝐼 ∈ ℕ) → if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼) ∈ ℝ)
14 nnre 12138 . . . . . . . . . . . . . . . . . . . . . 22 ((1st𝑋) ∈ ℕ → (1st𝑋) ∈ ℝ)
1514adantr 480 . . . . . . . . . . . . . . . . . . . . 21 (((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ) → (1st𝑋) ∈ ℝ)
16 nnre 12138 . . . . . . . . . . . . . . . . . . . . 21 (𝐼 ∈ ℕ → 𝐼 ∈ ℝ)
1715, 16anim12i 613 . . . . . . . . . . . . . . . . . . . 20 ((((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ) ∧ 𝐼 ∈ ℕ) → ((1st𝑋) ∈ ℝ ∧ 𝐼 ∈ ℝ))
18173adant2 1131 . . . . . . . . . . . . . . . . . . 19 ((((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ) ∧ ⟨(1st𝑋), (2nd𝑋)⟩ ∈ ≤ ∧ 𝐼 ∈ ℕ) → ((1st𝑋) ∈ ℝ ∧ 𝐼 ∈ ℝ))
1918ancomd 461 . . . . . . . . . . . . . . . . . 18 ((((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ) ∧ ⟨(1st𝑋), (2nd𝑋)⟩ ∈ ≤ ∧ 𝐼 ∈ ℕ) → (𝐼 ∈ ℝ ∧ (1st𝑋) ∈ ℝ))
20 min1 13094 . . . . . . . . . . . . . . . . . 18 ((𝐼 ∈ ℝ ∧ (1st𝑋) ∈ ℝ) → if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)) ≤ 𝐼)
2119, 20syl 17 . . . . . . . . . . . . . . . . 17 ((((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ) ∧ ⟨(1st𝑋), (2nd𝑋)⟩ ∈ ≤ ∧ 𝐼 ∈ ℕ) → if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)) ≤ 𝐼)
22 nnre 12138 . . . . . . . . . . . . . . . . . . . . . 22 ((2nd𝑋) ∈ ℕ → (2nd𝑋) ∈ ℝ)
2322adantl 481 . . . . . . . . . . . . . . . . . . . . 21 (((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ) → (2nd𝑋) ∈ ℝ)
2423, 16anim12i 613 . . . . . . . . . . . . . . . . . . . 20 ((((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ) ∧ 𝐼 ∈ ℕ) → ((2nd𝑋) ∈ ℝ ∧ 𝐼 ∈ ℝ))
25243adant2 1131 . . . . . . . . . . . . . . . . . . 19 ((((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ) ∧ ⟨(1st𝑋), (2nd𝑋)⟩ ∈ ≤ ∧ 𝐼 ∈ ℕ) → ((2nd𝑋) ∈ ℝ ∧ 𝐼 ∈ ℝ))
2625ancomd 461 . . . . . . . . . . . . . . . . . 18 ((((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ) ∧ ⟨(1st𝑋), (2nd𝑋)⟩ ∈ ≤ ∧ 𝐼 ∈ ℕ) → (𝐼 ∈ ℝ ∧ (2nd𝑋) ∈ ℝ))
27 max1 13090 . . . . . . . . . . . . . . . . . 18 ((𝐼 ∈ ℝ ∧ (2nd𝑋) ∈ ℝ) → 𝐼 ≤ if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼))
2826, 27syl 17 . . . . . . . . . . . . . . . . 17 ((((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ) ∧ ⟨(1st𝑋), (2nd𝑋)⟩ ∈ ≤ ∧ 𝐼 ∈ ℕ) → 𝐼 ≤ if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼))
299, 10, 13, 21, 28letrd 11276 . . . . . . . . . . . . . . . 16 ((((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ) ∧ ⟨(1st𝑋), (2nd𝑋)⟩ ∈ ≤ ∧ 𝐼 ∈ ℕ) → if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)) ≤ if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼))
30 df-br 5094 . . . . . . . . . . . . . . . 16 (if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)) ≤ if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼) ↔ ⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩ ∈ ≤ )
3129, 30sylib 218 . . . . . . . . . . . . . . 15 ((((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ) ∧ ⟨(1st𝑋), (2nd𝑋)⟩ ∈ ≤ ∧ 𝐼 ∈ ℕ) → ⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩ ∈ ≤ )
328, 12opelxpd 5658 . . . . . . . . . . . . . . 15 ((((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ) ∧ ⟨(1st𝑋), (2nd𝑋)⟩ ∈ ≤ ∧ 𝐼 ∈ ℕ) → ⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩ ∈ (ℕ × ℕ))
3331, 32elind 4149 . . . . . . . . . . . . . 14 ((((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ) ∧ ⟨(1st𝑋), (2nd𝑋)⟩ ∈ ≤ ∧ 𝐼 ∈ ℕ) → ⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩ ∈ ( ≤ ∩ (ℕ × ℕ)))
34333exp 1119 . . . . . . . . . . . . 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 240 . . . . . . . . . . 11 ((𝑋 = ⟨(1st𝑋), (2nd𝑋)⟩ ∧ ((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ)) → (𝑋 ∈ ≤ → (𝐼 ∈ ℕ → ⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩ ∈ ( ≤ ∩ (ℕ × ℕ)))))
373, 36sylbi 217 . . . . . . . . . 10 (𝑋 ∈ (ℕ × ℕ) → (𝑋 ∈ ≤ → (𝐼 ∈ ℕ → ⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩ ∈ ( ≤ ∩ (ℕ × ℕ)))))
3837impcom 407 . . . . . . . . 9 ((𝑋 ∈ ≤ ∧ 𝑋 ∈ (ℕ × ℕ)) → (𝐼 ∈ ℕ → ⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩ ∈ ( ≤ ∩ (ℕ × ℕ))))
392, 38sylbi 217 . . . . . . . 8 (𝑋 ∈ ( ≤ ∩ (ℕ × ℕ)) → (𝐼 ∈ ℕ → ⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩ ∈ ( ≤ ∩ (ℕ × ℕ))))
40393ad2ant1 1133 . . . . . . 7 ((𝑋 ∈ ( ≤ ∩ (ℕ × ℕ)) ∧ Fun (𝐺 ∖ {∅}) ∧ dom 𝐺 ⊆ (...‘𝑋)) → (𝐼 ∈ ℕ → ⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩ ∈ ( ≤ ∩ (ℕ × ℕ))))
411, 40sylbi 217 . . . . . 6 (𝐺 Struct 𝑋 → (𝐼 ∈ ℕ → ⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩ ∈ ( ≤ ∩ (ℕ × ℕ))))
4241imp 406 . . . . 5 ((𝐺 Struct 𝑋𝐼 ∈ ℕ) → ⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩ ∈ ( ≤ ∩ (ℕ × ℕ)))
43423adant2 1131 . . . 4 ((𝐺 Struct 𝑋𝐸𝑉𝐼 ∈ ℕ) → ⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩ ∈ ( ≤ ∩ (ℕ × ℕ)))
44 structex 17067 . . . . . . 7 (𝐺 Struct 𝑋𝐺 ∈ V)
45 structn0fun 17068 . . . . . . 7 (𝐺 Struct 𝑋 → Fun (𝐺 ∖ {∅}))
4644, 45jca 511 . . . . . 6 (𝐺 Struct 𝑋 → (𝐺 ∈ V ∧ Fun (𝐺 ∖ {∅})))
47463ad2ant1 1133 . . . . 5 ((𝐺 Struct 𝑋𝐸𝑉𝐼 ∈ ℕ) → (𝐺 ∈ V ∧ Fun (𝐺 ∖ {∅})))
48 simp3 1138 . . . . 5 ((𝐺 Struct 𝑋𝐸𝑉𝐼 ∈ ℕ) → 𝐼 ∈ ℕ)
49 simp2 1137 . . . . 5 ((𝐺 Struct 𝑋𝐸𝑉𝐼 ∈ ℕ) → 𝐸𝑉)
50 setsfun0 17089 . . . . 5 (((𝐺 ∈ V ∧ Fun (𝐺 ∖ {∅})) ∧ (𝐼 ∈ ℕ ∧ 𝐸𝑉)) → Fun ((𝐺 sSet ⟨𝐼, 𝐸⟩) ∖ {∅}))
5147, 48, 49, 50syl12anc 836 . . . 4 ((𝐺 Struct 𝑋𝐸𝑉𝐼 ∈ ℕ) → Fun ((𝐺 sSet ⟨𝐼, 𝐸⟩) ∖ {∅}))
52443ad2ant1 1133 . . . . . 6 ((𝐺 Struct 𝑋𝐸𝑉𝐼 ∈ ℕ) → 𝐺 ∈ V)
53 setsdm 17087 . . . . . 6 ((𝐺 ∈ V ∧ 𝐸𝑉) → dom (𝐺 sSet ⟨𝐼, 𝐸⟩) = (dom 𝐺 ∪ {𝐼}))
5452, 49, 53syl2anc 584 . . . . 5 ((𝐺 Struct 𝑋𝐸𝑉𝐼 ∈ ℕ) → dom (𝐺 sSet ⟨𝐼, 𝐸⟩) = (dom 𝐺 ∪ {𝐼}))
55 fveq2 6828 . . . . . . . . . . . . . . . . 17 (𝑋 = ⟨(1st𝑋), (2nd𝑋)⟩ → (...‘𝑋) = (...‘⟨(1st𝑋), (2nd𝑋)⟩))
56 df-ov 7355 . . . . . . . . . . . . . . . . 17 ((1st𝑋)...(2nd𝑋)) = (...‘⟨(1st𝑋), (2nd𝑋)⟩)
5755, 56eqtr4di 2784 . . . . . . . . . . . . . . . 16 (𝑋 = ⟨(1st𝑋), (2nd𝑋)⟩ → (...‘𝑋) = ((1st𝑋)...(2nd𝑋)))
5857sseq2d 3962 . . . . . . . . . . . . . . 15 (𝑋 = ⟨(1st𝑋), (2nd𝑋)⟩ → (dom 𝐺 ⊆ (...‘𝑋) ↔ dom 𝐺 ⊆ ((1st𝑋)...(2nd𝑋))))
5958adantr 480 . . . . . . . . . . . . . 14 ((𝑋 = ⟨(1st𝑋), (2nd𝑋)⟩ ∧ ((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ)) → (dom 𝐺 ⊆ (...‘𝑋) ↔ dom 𝐺 ⊆ ((1st𝑋)...(2nd𝑋))))
60 df-3an 1088 . . . . . . . . . . . . . . . . . 18 (((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ ∧ 𝐼 ∈ ℕ) ↔ (((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ) ∧ 𝐼 ∈ ℕ))
61 nnz 12495 . . . . . . . . . . . . . . . . . . . . 21 ((1st𝑋) ∈ ℕ → (1st𝑋) ∈ ℤ)
62 nnz 12495 . . . . . . . . . . . . . . . . . . . . 21 ((2nd𝑋) ∈ ℕ → (2nd𝑋) ∈ ℤ)
63 nnz 12495 . . . . . . . . . . . . . . . . . . . . 21 (𝐼 ∈ ℕ → 𝐼 ∈ ℤ)
6461, 62, 633anim123i 1151 . . . . . . . . . . . . . . . . . . . 20 (((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ ∧ 𝐼 ∈ ℕ) → ((1st𝑋) ∈ ℤ ∧ (2nd𝑋) ∈ ℤ ∧ 𝐼 ∈ ℤ))
65 ssfzunsnext 13475 . . . . . . . . . . . . . . . . . . . . 21 ((dom 𝐺 ⊆ ((1st𝑋)...(2nd𝑋)) ∧ ((1st𝑋) ∈ ℤ ∧ (2nd𝑋) ∈ ℤ ∧ 𝐼 ∈ ℤ)) → (dom 𝐺 ∪ {𝐼}) ⊆ (if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋))...if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)))
66 df-ov 7355 . . . . . . . . . . . . . . . . . . . . 21 (if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋))...if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)) = (...‘⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩)
6765, 66sseqtrdi 3970 . . . . . . . . . . . . . . . . . . . 20 ((dom 𝐺 ⊆ ((1st𝑋)...(2nd𝑋)) ∧ ((1st𝑋) ∈ ℤ ∧ (2nd𝑋) ∈ ℤ ∧ 𝐼 ∈ ℤ)) → (dom 𝐺 ∪ {𝐼}) ⊆ (...‘⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩))
6864, 67sylan2 593 . . . . . . . . . . . . . . . . . . 19 ((dom 𝐺 ⊆ ((1st𝑋)...(2nd𝑋)) ∧ ((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ ∧ 𝐼 ∈ ℕ)) → (dom 𝐺 ∪ {𝐼}) ⊆ (...‘⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩))
6968ex 412 . . . . . . . . . . . . . . . . . 18 (dom 𝐺 ⊆ ((1st𝑋)...(2nd𝑋)) → (((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ ∧ 𝐼 ∈ ℕ) → (dom 𝐺 ∪ {𝐼}) ⊆ (...‘⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩)))
7060, 69biimtrrid 243 . . . . . . . . . . . . . . . . 17 (dom 𝐺 ⊆ ((1st𝑋)...(2nd𝑋)) → ((((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ) ∧ 𝐼 ∈ ℕ) → (dom 𝐺 ∪ {𝐼}) ⊆ (...‘⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩)))
7170expd 415 . . . . . . . . . . . . . . . 16 (dom 𝐺 ⊆ ((1st𝑋)...(2nd𝑋)) → (((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ) → (𝐼 ∈ ℕ → (dom 𝐺 ∪ {𝐼}) ⊆ (...‘⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩))))
7271com12 32 . . . . . . . . . . . . . . 15 (((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ) → (dom 𝐺 ⊆ ((1st𝑋)...(2nd𝑋)) → (𝐼 ∈ ℕ → (dom 𝐺 ∪ {𝐼}) ⊆ (...‘⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩))))
7372adantl 481 . . . . . . . . . . . . . 14 ((𝑋 = ⟨(1st𝑋), (2nd𝑋)⟩ ∧ ((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ)) → (dom 𝐺 ⊆ ((1st𝑋)...(2nd𝑋)) → (𝐼 ∈ ℕ → (dom 𝐺 ∪ {𝐼}) ⊆ (...‘⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩))))
7459, 73sylbid 240 . . . . . . . . . . . . 13 ((𝑋 = ⟨(1st𝑋), (2nd𝑋)⟩ ∧ ((1st𝑋) ∈ ℕ ∧ (2nd𝑋) ∈ ℕ)) → (dom 𝐺 ⊆ (...‘𝑋) → (𝐼 ∈ ℕ → (dom 𝐺 ∪ {𝐼}) ⊆ (...‘⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩))))
753, 74sylbi 217 . . . . . . . . . . . 12 (𝑋 ∈ (ℕ × ℕ) → (dom 𝐺 ⊆ (...‘𝑋) → (𝐼 ∈ ℕ → (dom 𝐺 ∪ {𝐼}) ⊆ (...‘⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩))))
7675adantl 481 . . . . . . . . . . 11 ((𝑋 ∈ ≤ ∧ 𝑋 ∈ (ℕ × ℕ)) → (dom 𝐺 ⊆ (...‘𝑋) → (𝐼 ∈ ℕ → (dom 𝐺 ∪ {𝐼}) ⊆ (...‘⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩))))
772, 76sylbi 217 . . . . . . . . . 10 (𝑋 ∈ ( ≤ ∩ (ℕ × ℕ)) → (dom 𝐺 ⊆ (...‘𝑋) → (𝐼 ∈ ℕ → (dom 𝐺 ∪ {𝐼}) ⊆ (...‘⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩))))
7877imp 406 . . . . . . . . 9 ((𝑋 ∈ ( ≤ ∩ (ℕ × ℕ)) ∧ dom 𝐺 ⊆ (...‘𝑋)) → (𝐼 ∈ ℕ → (dom 𝐺 ∪ {𝐼}) ⊆ (...‘⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩)))
79783adant2 1131 . . . . . . . 8 ((𝑋 ∈ ( ≤ ∩ (ℕ × ℕ)) ∧ Fun (𝐺 ∖ {∅}) ∧ dom 𝐺 ⊆ (...‘𝑋)) → (𝐼 ∈ ℕ → (dom 𝐺 ∪ {𝐼}) ⊆ (...‘⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩)))
801, 79sylbi 217 . . . . . . 7 (𝐺 Struct 𝑋 → (𝐼 ∈ ℕ → (dom 𝐺 ∪ {𝐼}) ⊆ (...‘⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩)))
8180imp 406 . . . . . 6 ((𝐺 Struct 𝑋𝐼 ∈ ℕ) → (dom 𝐺 ∪ {𝐼}) ⊆ (...‘⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩))
82813adant2 1131 . . . . 5 ((𝐺 Struct 𝑋𝐸𝑉𝐼 ∈ ℕ) → (dom 𝐺 ∪ {𝐼}) ⊆ (...‘⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩))
8354, 82eqsstrd 3964 . . . 4 ((𝐺 Struct 𝑋𝐸𝑉𝐼 ∈ ℕ) → dom (𝐺 sSet ⟨𝐼, 𝐸⟩) ⊆ (...‘⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩))
84 isstruct2 17066 . . . 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𝑋), 𝐼)⟩)))
8543, 51, 83, 84syl3anbrc 1344 . . 3 ((𝐺 Struct 𝑋𝐸𝑉𝐼 ∈ ℕ) → (𝐺 sSet ⟨𝐼, 𝐸⟩) Struct ⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩)
8685adantr 480 . 2 (((𝐺 Struct 𝑋𝐸𝑉𝐼 ∈ ℕ) ∧ 𝑌 = ⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩) → (𝐺 sSet ⟨𝐼, 𝐸⟩) Struct ⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩)
87 breq2 5097 . . 3 (𝑌 = ⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩ → ((𝐺 sSet ⟨𝐼, 𝐸⟩) Struct 𝑌 ↔ (𝐺 sSet ⟨𝐼, 𝐸⟩) Struct ⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩))
8887adantl 481 . 2 (((𝐺 Struct 𝑋𝐸𝑉𝐼 ∈ ℕ) ∧ 𝑌 = ⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩) → ((𝐺 sSet ⟨𝐼, 𝐸⟩) Struct 𝑌 ↔ (𝐺 sSet ⟨𝐼, 𝐸⟩) Struct ⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩))
8986, 88mpbird 257 1 (((𝐺 Struct 𝑋𝐸𝑉𝐼 ∈ ℕ) ∧ 𝑌 = ⟨if(𝐼 ≤ (1st𝑋), 𝐼, (1st𝑋)), if(𝐼 ≤ (2nd𝑋), (2nd𝑋), 𝐼)⟩) → (𝐺 sSet ⟨𝐼, 𝐸⟩) Struct 𝑌)
Colors of variables: wff setvar class
Syntax hints:  wi 4  wb 206  wa 395  w3a 1086   = wceq 1541  wcel 2111  Vcvv 3436  cdif 3894  cun 3895  cin 3896  wss 3897  c0 4282  ifcif 4474  {csn 4575  cop 4581   class class class wbr 5093   × cxp 5617  dom cdm 5619  Fun wfun 6481  cfv 6487  (class class class)co 7352  1st c1st 7925  2nd c2nd 7926  cr 11011  cle 11153  cn 12131  cz 12474  ...cfz 13413   Struct cstr 17063   sSet csts 17080
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1796  ax-4 1810  ax-5 1911  ax-6 1968  ax-7 2009  ax-8 2113  ax-9 2121  ax-10 2144  ax-11 2160  ax-12 2180  ax-ext 2703  ax-sep 5236  ax-nul 5246  ax-pow 5305  ax-pr 5372  ax-un 7674  ax-cnex 11068  ax-resscn 11069  ax-1cn 11070  ax-icn 11071  ax-addcl 11072  ax-addrcl 11073  ax-mulcl 11074  ax-mulrcl 11075  ax-mulcom 11076  ax-addass 11077  ax-mulass 11078  ax-distr 11079  ax-i2m1 11080  ax-1ne0 11081  ax-1rid 11082  ax-rnegex 11083  ax-rrecex 11084  ax-cnre 11085  ax-pre-lttri 11086  ax-pre-lttrn 11087  ax-pre-ltadd 11088  ax-pre-mulgt0 11089
This theorem depends on definitions:  df-bi 207  df-an 396  df-or 848  df-3or 1087  df-3an 1088  df-tru 1544  df-fal 1554  df-ex 1781  df-nf 1785  df-sb 2068  df-mo 2535  df-eu 2564  df-clab 2710  df-cleq 2723  df-clel 2806  df-nfc 2881  df-ne 2929  df-nel 3033  df-ral 3048  df-rex 3057  df-reu 3347  df-rab 3396  df-v 3438  df-sbc 3737  df-csb 3846  df-dif 3900  df-un 3902  df-in 3904  df-ss 3914  df-pss 3917  df-nul 4283  df-if 4475  df-pw 4551  df-sn 4576  df-pr 4578  df-op 4582  df-uni 4859  df-iun 4943  df-br 5094  df-opab 5156  df-mpt 5175  df-tr 5201  df-id 5514  df-eprel 5519  df-po 5527  df-so 5528  df-fr 5572  df-we 5574  df-xp 5625  df-rel 5626  df-cnv 5627  df-co 5628  df-dm 5629  df-rn 5630  df-res 5631  df-ima 5632  df-pred 6254  df-ord 6315  df-on 6316  df-lim 6317  df-suc 6318  df-iota 6443  df-fun 6489  df-fn 6490  df-f 6491  df-f1 6492  df-fo 6493  df-f1o 6494  df-fv 6495  df-riota 7309  df-ov 7355  df-oprab 7356  df-mpo 7357  df-om 7803  df-1st 7927  df-2nd 7928  df-frecs 8217  df-wrecs 8248  df-recs 8297  df-rdg 8335  df-1o 8391  df-er 8628  df-en 8876  df-dom 8877  df-sdom 8878  df-fin 8879  df-pnf 11154  df-mnf 11155  df-xr 11156  df-ltxr 11157  df-le 11158  df-sub 11352  df-neg 11353  df-nn 12132  df-n0 12388  df-z 12475  df-uz 12739  df-fz 13414  df-struct 17064  df-sets 17081
This theorem is referenced by:  setsexstruct2  17092  setsstruct  17093
  Copyright terms: Public domain W3C validator