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

Theorem setsstruct 17261
Description: An extensible structure with a replaced slot is an extensible structure. (Contributed by AV, 9-Jun-2021.) (Revised by AV, 14-Nov-2021.)
Assertion
Ref Expression
setsstruct ((𝐸𝑉𝐼 ∈ (ℤ𝑀) ∧ 𝐺 Struct ⟨𝑀, 𝑁⟩) → (𝐺 sSet ⟨𝐼, 𝐸⟩) Struct ⟨𝑀, if(𝐼𝑁, 𝑁, 𝐼)⟩)

Proof of Theorem setsstruct
StepHypRef Expression
1 isstruct 17237 . . . . . 6 (𝐺 Struct ⟨𝑀, 𝑁⟩ ↔ ((𝑀 ∈ ℕ ∧ 𝑁 ∈ ℕ ∧ 𝑀𝑁) ∧ Fun (𝐺 ∖ {∅}) ∧ dom 𝐺 ⊆ (𝑀...𝑁)))
2 simp2 1155 . . . . . . . . . 10 (((𝑀 ∈ ℕ ∧ 𝑁 ∈ ℕ ∧ 𝑀𝑁) ∧ 𝐺 Struct ⟨𝑀, 𝑁⟩ ∧ (𝐸𝑉𝐼 ∈ (ℤ𝑀))) → 𝐺 Struct ⟨𝑀, 𝑁⟩)
3 simp3l 1220 . . . . . . . . . 10 (((𝑀 ∈ ℕ ∧ 𝑁 ∈ ℕ ∧ 𝑀𝑁) ∧ 𝐺 Struct ⟨𝑀, 𝑁⟩ ∧ (𝐸𝑉𝐼 ∈ (ℤ𝑀))) → 𝐸𝑉)
4 1z 12642 . . . . . . . . . . . . . . . 16 1 ∈ ℤ
5 nnge1 12282 . . . . . . . . . . . . . . . 16 (𝑀 ∈ ℕ → 1 ≤ 𝑀)
6 eluzuzle 12889 . . . . . . . . . . . . . . . 16 ((1 ∈ ℤ ∧ 1 ≤ 𝑀) → (𝐼 ∈ (ℤ𝑀) → 𝐼 ∈ (ℤ‘1)))
74, 5, 6sylancr 599 . . . . . . . . . . . . . . 15 (𝑀 ∈ ℕ → (𝐼 ∈ (ℤ𝑀) → 𝐼 ∈ (ℤ‘1)))
8 elnnuz 12920 . . . . . . . . . . . . . . 15 (𝐼 ∈ ℕ ↔ 𝐼 ∈ (ℤ‘1))
97, 8imbitrrdi 255 . . . . . . . . . . . . . 14 (𝑀 ∈ ℕ → (𝐼 ∈ (ℤ𝑀) → 𝐼 ∈ ℕ))
109adantld 496 . . . . . . . . . . . . 13 (𝑀 ∈ ℕ → ((𝐸𝑉𝐼 ∈ (ℤ𝑀)) → 𝐼 ∈ ℕ))
11103ad2ant1 1151 . . . . . . . . . . . 12 ((𝑀 ∈ ℕ ∧ 𝑁 ∈ ℕ ∧ 𝑀𝑁) → ((𝐸𝑉𝐼 ∈ (ℤ𝑀)) → 𝐼 ∈ ℕ))
1211a1d 26 . . . . . . . . . . 11 ((𝑀 ∈ ℕ ∧ 𝑁 ∈ ℕ ∧ 𝑀𝑁) → (𝐺 Struct ⟨𝑀, 𝑁⟩ → ((𝐸𝑉𝐼 ∈ (ℤ𝑀)) → 𝐼 ∈ ℕ)))
13123imp 1128 . . . . . . . . . 10 (((𝑀 ∈ ℕ ∧ 𝑁 ∈ ℕ ∧ 𝑀𝑁) ∧ 𝐺 Struct ⟨𝑀, 𝑁⟩ ∧ (𝐸𝑉𝐼 ∈ (ℤ𝑀))) → 𝐼 ∈ ℕ)
142, 3, 133jca 1146 . . . . . . . . 9 (((𝑀 ∈ ℕ ∧ 𝑁 ∈ ℕ ∧ 𝑀𝑁) ∧ 𝐺 Struct ⟨𝑀, 𝑁⟩ ∧ (𝐸𝑉𝐼 ∈ (ℤ𝑀))) → (𝐺 Struct ⟨𝑀, 𝑁⟩ ∧ 𝐸𝑉𝐼 ∈ ℕ))
15 op1stg 8007 . . . . . . . . . . . . . . . 16 ((𝑀 ∈ ℕ ∧ 𝑁 ∈ ℕ) → (1st ‘⟨𝑀, 𝑁⟩) = 𝑀)
1615breq2d 5126 . . . . . . . . . . . . . . 15 ((𝑀 ∈ ℕ ∧ 𝑁 ∈ ℕ) → (𝐼 ≤ (1st ‘⟨𝑀, 𝑁⟩) ↔ 𝐼𝑀))
17 eqidd 2767 . . . . . . . . . . . . . . 15 ((𝑀 ∈ ℕ ∧ 𝑁 ∈ ℕ) → 𝐼 = 𝐼)
1816, 17, 15ifbieq12d 4521 . . . . . . . . . . . . . 14 ((𝑀 ∈ ℕ ∧ 𝑁 ∈ ℕ) → if(𝐼 ≤ (1st ‘⟨𝑀, 𝑁⟩), 𝐼, (1st ‘⟨𝑀, 𝑁⟩)) = if(𝐼𝑀, 𝐼, 𝑀))
19183adant3 1150 . . . . . . . . . . . . 13 ((𝑀 ∈ ℕ ∧ 𝑁 ∈ ℕ ∧ 𝑀𝑁) → if(𝐼 ≤ (1st ‘⟨𝑀, 𝑁⟩), 𝐼, (1st ‘⟨𝑀, 𝑁⟩)) = if(𝐼𝑀, 𝐼, 𝑀))
2019adantr 486 . . . . . . . . . . . 12 (((𝑀 ∈ ℕ ∧ 𝑁 ∈ ℕ ∧ 𝑀𝑁) ∧ (𝐸𝑉𝐼 ∈ (ℤ𝑀))) → if(𝐼 ≤ (1st ‘⟨𝑀, 𝑁⟩), 𝐼, (1st ‘⟨𝑀, 𝑁⟩)) = if(𝐼𝑀, 𝐼, 𝑀))
21 eluz2 12886 . . . . . . . . . . . . . . . 16 (𝐼 ∈ (ℤ𝑀) ↔ (𝑀 ∈ ℤ ∧ 𝐼 ∈ ℤ ∧ 𝑀𝐼))
22 zre 12613 . . . . . . . . . . . . . . . . . . . 20 (𝐼 ∈ ℤ → 𝐼 ∈ ℝ)
2322rexrd 11277 . . . . . . . . . . . . . . . . . . 19 (𝐼 ∈ ℤ → 𝐼 ∈ ℝ*)
24233ad2ant2 1152 . . . . . . . . . . . . . . . . . 18 ((𝑀 ∈ ℤ ∧ 𝐼 ∈ ℤ ∧ 𝑀𝐼) → 𝐼 ∈ ℝ*)
25 zre 12613 . . . . . . . . . . . . . . . . . . . 20 (𝑀 ∈ ℤ → 𝑀 ∈ ℝ)
2625rexrd 11277 . . . . . . . . . . . . . . . . . . 19 (𝑀 ∈ ℤ → 𝑀 ∈ ℝ*)
27263ad2ant1 1151 . . . . . . . . . . . . . . . . . 18 ((𝑀 ∈ ℤ ∧ 𝐼 ∈ ℤ ∧ 𝑀𝐼) → 𝑀 ∈ ℝ*)
28 simp3 1156 . . . . . . . . . . . . . . . . . 18 ((𝑀 ∈ ℤ ∧ 𝐼 ∈ ℤ ∧ 𝑀𝐼) → 𝑀𝐼)
2924, 27, 283jca 1146 . . . . . . . . . . . . . . . . 17 ((𝑀 ∈ ℤ ∧ 𝐼 ∈ ℤ ∧ 𝑀𝐼) → (𝐼 ∈ ℝ*𝑀 ∈ ℝ*𝑀𝐼))
3029a1d 26 . . . . . . . . . . . . . . . 16 ((𝑀 ∈ ℤ ∧ 𝐼 ∈ ℤ ∧ 𝑀𝐼) → ((𝑀 ∈ ℕ ∧ 𝑁 ∈ ℕ ∧ 𝑀𝑁) → (𝐼 ∈ ℝ*𝑀 ∈ ℝ*𝑀𝐼)))
3121, 30sylbi 220 . . . . . . . . . . . . . . 15 (𝐼 ∈ (ℤ𝑀) → ((𝑀 ∈ ℕ ∧ 𝑁 ∈ ℕ ∧ 𝑀𝑁) → (𝐼 ∈ ℝ*𝑀 ∈ ℝ*𝑀𝐼)))
3231adantl 487 . . . . . . . . . . . . . 14 ((𝐸𝑉𝐼 ∈ (ℤ𝑀)) → ((𝑀 ∈ ℕ ∧ 𝑁 ∈ ℕ ∧ 𝑀𝑁) → (𝐼 ∈ ℝ*𝑀 ∈ ℝ*𝑀𝐼)))
3332impcom 413 . . . . . . . . . . . . 13 (((𝑀 ∈ ℕ ∧ 𝑁 ∈ ℕ ∧ 𝑀𝑁) ∧ (𝐸𝑉𝐼 ∈ (ℤ𝑀))) → (𝐼 ∈ ℝ*𝑀 ∈ ℝ*𝑀𝐼))
34 xrmineq 13224 . . . . . . . . . . . . 13 ((𝐼 ∈ ℝ*𝑀 ∈ ℝ*𝑀𝐼) → if(𝐼𝑀, 𝐼, 𝑀) = 𝑀)
3533, 34syl 18 . . . . . . . . . . . 12 (((𝑀 ∈ ℕ ∧ 𝑁 ∈ ℕ ∧ 𝑀𝑁) ∧ (𝐸𝑉𝐼 ∈ (ℤ𝑀))) → if(𝐼𝑀, 𝐼, 𝑀) = 𝑀)
3620, 35eqtr2d 2802 . . . . . . . . . . 11 (((𝑀 ∈ ℕ ∧ 𝑁 ∈ ℕ ∧ 𝑀𝑁) ∧ (𝐸𝑉𝐼 ∈ (ℤ𝑀))) → 𝑀 = if(𝐼 ≤ (1st ‘⟨𝑀, 𝑁⟩), 𝐼, (1st ‘⟨𝑀, 𝑁⟩)))
37363adant2 1149 . . . . . . . . . 10 (((𝑀 ∈ ℕ ∧ 𝑁 ∈ ℕ ∧ 𝑀𝑁) ∧ 𝐺 Struct ⟨𝑀, 𝑁⟩ ∧ (𝐸𝑉𝐼 ∈ (ℤ𝑀))) → 𝑀 = if(𝐼 ≤ (1st ‘⟨𝑀, 𝑁⟩), 𝐼, (1st ‘⟨𝑀, 𝑁⟩)))
38 op2ndg 8008 . . . . . . . . . . . . . . 15 ((𝑀 ∈ ℕ ∧ 𝑁 ∈ ℕ) → (2nd ‘⟨𝑀, 𝑁⟩) = 𝑁)
3938eqcomd 2772 . . . . . . . . . . . . . 14 ((𝑀 ∈ ℕ ∧ 𝑁 ∈ ℕ) → 𝑁 = (2nd ‘⟨𝑀, 𝑁⟩))
4039breq2d 5126 . . . . . . . . . . . . 13 ((𝑀 ∈ ℕ ∧ 𝑁 ∈ ℕ) → (𝐼𝑁𝐼 ≤ (2nd ‘⟨𝑀, 𝑁⟩)))
4140, 39, 17ifbieq12d 4521 . . . . . . . . . . . 12 ((𝑀 ∈ ℕ ∧ 𝑁 ∈ ℕ) → if(𝐼𝑁, 𝑁, 𝐼) = if(𝐼 ≤ (2nd ‘⟨𝑀, 𝑁⟩), (2nd ‘⟨𝑀, 𝑁⟩), 𝐼))
42413adant3 1150 . . . . . . . . . . 11 ((𝑀 ∈ ℕ ∧ 𝑁 ∈ ℕ ∧ 𝑀𝑁) → if(𝐼𝑁, 𝑁, 𝐼) = if(𝐼 ≤ (2nd ‘⟨𝑀, 𝑁⟩), (2nd ‘⟨𝑀, 𝑁⟩), 𝐼))
43423ad2ant1 1151 . . . . . . . . . 10 (((𝑀 ∈ ℕ ∧ 𝑁 ∈ ℕ ∧ 𝑀𝑁) ∧ 𝐺 Struct ⟨𝑀, 𝑁⟩ ∧ (𝐸𝑉𝐼 ∈ (ℤ𝑀))) → if(𝐼𝑁, 𝑁, 𝐼) = if(𝐼 ≤ (2nd ‘⟨𝑀, 𝑁⟩), (2nd ‘⟨𝑀, 𝑁⟩), 𝐼))
4437, 43opeq12d 4851 . . . . . . . . 9 (((𝑀 ∈ ℕ ∧ 𝑁 ∈ ℕ ∧ 𝑀𝑁) ∧ 𝐺 Struct ⟨𝑀, 𝑁⟩ ∧ (𝐸𝑉𝐼 ∈ (ℤ𝑀))) → ⟨𝑀, if(𝐼𝑁, 𝑁, 𝐼)⟩ = ⟨if(𝐼 ≤ (1st ‘⟨𝑀, 𝑁⟩), 𝐼, (1st ‘⟨𝑀, 𝑁⟩)), if(𝐼 ≤ (2nd ‘⟨𝑀, 𝑁⟩), (2nd ‘⟨𝑀, 𝑁⟩), 𝐼)⟩)
4514, 44jca 521 . . . . . . . 8 (((𝑀 ∈ ℕ ∧ 𝑁 ∈ ℕ ∧ 𝑀𝑁) ∧ 𝐺 Struct ⟨𝑀, 𝑁⟩ ∧ (𝐸𝑉𝐼 ∈ (ℤ𝑀))) → ((𝐺 Struct ⟨𝑀, 𝑁⟩ ∧ 𝐸𝑉𝐼 ∈ ℕ) ∧ ⟨𝑀, if(𝐼𝑁, 𝑁, 𝐼)⟩ = ⟨if(𝐼 ≤ (1st ‘⟨𝑀, 𝑁⟩), 𝐼, (1st ‘⟨𝑀, 𝑁⟩)), if(𝐼 ≤ (2nd ‘⟨𝑀, 𝑁⟩), (2nd ‘⟨𝑀, 𝑁⟩), 𝐼)⟩))
46453exp 1137 . . . . . . 7 ((𝑀 ∈ ℕ ∧ 𝑁 ∈ ℕ ∧ 𝑀𝑁) → (𝐺 Struct ⟨𝑀, 𝑁⟩ → ((𝐸𝑉𝐼 ∈ (ℤ𝑀)) → ((𝐺 Struct ⟨𝑀, 𝑁⟩ ∧ 𝐸𝑉𝐼 ∈ ℕ) ∧ ⟨𝑀, if(𝐼𝑁, 𝑁, 𝐼)⟩ = ⟨if(𝐼 ≤ (1st ‘⟨𝑀, 𝑁⟩), 𝐼, (1st ‘⟨𝑀, 𝑁⟩)), if(𝐼 ≤ (2nd ‘⟨𝑀, 𝑁⟩), (2nd ‘⟨𝑀, 𝑁⟩), 𝐼)⟩))))
47463ad2ant1 1151 . . . . . 6 (((𝑀 ∈ ℕ ∧ 𝑁 ∈ ℕ ∧ 𝑀𝑁) ∧ Fun (𝐺 ∖ {∅}) ∧ dom 𝐺 ⊆ (𝑀...𝑁)) → (𝐺 Struct ⟨𝑀, 𝑁⟩ → ((𝐸𝑉𝐼 ∈ (ℤ𝑀)) → ((𝐺 Struct ⟨𝑀, 𝑁⟩ ∧ 𝐸𝑉𝐼 ∈ ℕ) ∧ ⟨𝑀, if(𝐼𝑁, 𝑁, 𝐼)⟩ = ⟨if(𝐼 ≤ (1st ‘⟨𝑀, 𝑁⟩), 𝐼, (1st ‘⟨𝑀, 𝑁⟩)), if(𝐼 ≤ (2nd ‘⟨𝑀, 𝑁⟩), (2nd ‘⟨𝑀, 𝑁⟩), 𝐼)⟩))))
481, 47sylbi 220 . . . . 5 (𝐺 Struct ⟨𝑀, 𝑁⟩ → (𝐺 Struct ⟨𝑀, 𝑁⟩ → ((𝐸𝑉𝐼 ∈ (ℤ𝑀)) → ((𝐺 Struct ⟨𝑀, 𝑁⟩ ∧ 𝐸𝑉𝐼 ∈ ℕ) ∧ ⟨𝑀, if(𝐼𝑁, 𝑁, 𝐼)⟩ = ⟨if(𝐼 ≤ (1st ‘⟨𝑀, 𝑁⟩), 𝐼, (1st ‘⟨𝑀, 𝑁⟩)), if(𝐼 ≤ (2nd ‘⟨𝑀, 𝑁⟩), (2nd ‘⟨𝑀, 𝑁⟩), 𝐼)⟩))))
4948pm2.43i 53 . . . 4 (𝐺 Struct ⟨𝑀, 𝑁⟩ → ((𝐸𝑉𝐼 ∈ (ℤ𝑀)) → ((𝐺 Struct ⟨𝑀, 𝑁⟩ ∧ 𝐸𝑉𝐼 ∈ ℕ) ∧ ⟨𝑀, if(𝐼𝑁, 𝑁, 𝐼)⟩ = ⟨if(𝐼 ≤ (1st ‘⟨𝑀, 𝑁⟩), 𝐼, (1st ‘⟨𝑀, 𝑁⟩)), if(𝐼 ≤ (2nd ‘⟨𝑀, 𝑁⟩), (2nd ‘⟨𝑀, 𝑁⟩), 𝐼)⟩)))
5049expdcom 420 . . 3 (𝐸𝑉 → (𝐼 ∈ (ℤ𝑀) → (𝐺 Struct ⟨𝑀, 𝑁⟩ → ((𝐺 Struct ⟨𝑀, 𝑁⟩ ∧ 𝐸𝑉𝐼 ∈ ℕ) ∧ ⟨𝑀, if(𝐼𝑁, 𝑁, 𝐼)⟩ = ⟨if(𝐼 ≤ (1st ‘⟨𝑀, 𝑁⟩), 𝐼, (1st ‘⟨𝑀, 𝑁⟩)), if(𝐼 ≤ (2nd ‘⟨𝑀, 𝑁⟩), (2nd ‘⟨𝑀, 𝑁⟩), 𝐼)⟩))))
51503imp 1128 . 2 ((𝐸𝑉𝐼 ∈ (ℤ𝑀) ∧ 𝐺 Struct ⟨𝑀, 𝑁⟩) → ((𝐺 Struct ⟨𝑀, 𝑁⟩ ∧ 𝐸𝑉𝐼 ∈ ℕ) ∧ ⟨𝑀, if(𝐼𝑁, 𝑁, 𝐼)⟩ = ⟨if(𝐼 ≤ (1st ‘⟨𝑀, 𝑁⟩), 𝐼, (1st ‘⟨𝑀, 𝑁⟩)), if(𝐼 ≤ (2nd ‘⟨𝑀, 𝑁⟩), (2nd ‘⟨𝑀, 𝑁⟩), 𝐼)⟩))
52 setsstruct2 17259 . 2 (((𝐺 Struct ⟨𝑀, 𝑁⟩ ∧ 𝐸𝑉𝐼 ∈ ℕ) ∧ ⟨𝑀, if(𝐼𝑁, 𝑁, 𝐼)⟩ = ⟨if(𝐼 ≤ (1st ‘⟨𝑀, 𝑁⟩), 𝐼, (1st ‘⟨𝑀, 𝑁⟩)), if(𝐼 ≤ (2nd ‘⟨𝑀, 𝑁⟩), (2nd ‘⟨𝑀, 𝑁⟩), 𝐼)⟩) → (𝐺 sSet ⟨𝐼, 𝐸⟩) Struct ⟨𝑀, if(𝐼𝑁, 𝑁, 𝐼)⟩)
5351, 52syl 18 1 ((𝐸𝑉𝐼 ∈ (ℤ𝑀) ∧ 𝐺 Struct ⟨𝑀, 𝑁⟩) → (𝐺 sSet ⟨𝐼, 𝐸⟩) Struct ⟨𝑀, if(𝐼𝑁, 𝑁, 𝐼)⟩)
Colors of variables:    wff setvar class
This proof depends on syntax axioms:  wi 4  wa 401  w3a 1103   = wceq 1570  wcel 2146  cdif 3905  wss 3908  c0 4289  ifcif 4492  {csn 4594  cop 4600   class class class wbr 5114  dom cdm 5666  Fun wfun 6537  cfv 6543  (class class class)co 7423  1st c1st 7993  2nd c2nd 7994  1c1 11119  *cxr 11260  cle 11262  cn 12251  cz 12609  cuz 12880  ...cfz 13553   Struct cstr 17231   sSet csts 17248
This proof depends on axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1828  ax-4 1842  ax-5 1943  ax-6 2000  ax-7 2041  ax-8 2148  ax-9 2156  ax-10 2179  ax-11 2195  ax-12 2216  ax-ext 2738  ax-sep 5262  ax-nul 5274  ax-pow 5341  ax-pr 5409  ax-un 7745  ax-cnex 11174  ax-resscn 11175  ax-1cn 11176  ax-icn 11177  ax-addcl 11178  ax-addrcl 11179  ax-mulcl 11180  ax-mulrcl 11181  ax-mulcom 11182  ax-addass 11183  ax-mulass 11184  ax-distr 11185  ax-i2m1 11186  ax-1ne0 11187  ax-1rid 11188  ax-rnegex 11189  ax-rrecex 11190  ax-cnre 11191  ax-pre-lttri 11192  ax-pre-lttrn 11193  ax-pre-ltadd 11194  ax-pre-mulgt0 11195
This proof depends on definitions:  df-bi 210  df-an 402  df-or 862  df-3or 1104  df-3an 1105  df-tru 1573  df-fal 1583  df-ex 1813  df-nf 1817  df-sb 2100  df-mo 2570  df-eu 2600  df-clab 2745  df-cleq 2758  df-clel 2841  df-nfc 2915  df-ne 2962  df-nel 3068  df-ral 3083  df-rex 3093  df-reu 3373  df-rab 3420  df-v 3460  df-sbc 3748  df-csb 3857  df-dif 3911  df-un 3913  df-in 3915  df-ss 3925  df-pss 3928  df-nul 4290  df-if 4493  df-pw 4569  df-sn 4595  df-pr 4597  df-op 4601  df-uni 4878  df-iun 4963  df-br 5115  df-opab 5179  df-mpt 5198  df-tr 5224  df-id 5561  df-eprel 5566  df-po 5574  df-so 5575  df-fr 5619  df-we 5621  df-xp 5672  df-rel 5673  df-cnv 5674  df-co 5675  df-dm 5676  df-rn 5677  df-res 5678  df-ima 5679  df-pred 6309  df-ord 6370  df-on 6371  df-lim 6372  df-suc 6373  df-iota 6499  df-fun 6545  df-fn 6546  df-f 6547  df-f1 6548  df-fo 6549  df-f1o 6550  df-fv 6551  df-riota 7380  df-ov 7426  df-oprab 7427  df-mpo 7428  df-om 7872  df-1st 7995  df-2nd 7996  df-frecs 8287  df-wrecs 8318  df-recs 8367  df-rdg 8406  df-1o 8462  df-er 8703  df-en 8953  df-dom 8954  df-sdom 8955  df-fin 8956  df-pnf 11263  df-mnf 11264  df-xr 11265  df-ltxr 11266  df-le 11267  df-sub 11461  df-neg 11462  df-nn 12252  df-n0 12523  df-z 12610  df-uz 12881  df-fz 13554  df-struct 17232  df-sets 17249
This theorem is used by: (None)
  Copyright terms: Public domain W3C validator