HomeHome Metamath Proof Explorer < Previous   Next >
Related theorems
GIF version

Theorem nnwoOLD 4608
Description: Well-ordering principle: any non-empty set of natural numbers has a least element. Theorem I.37 (well-ordering principle) of [Apostol] p. 34.
Assertion
Ref Expression
nnwoOLD ((A ⊆ ℕ ∧ A ≠ ∅) → ∃xAyA xy)
Distinct variable group(s):   x,y,A

Proof of Theorem nnwoOLD
StepHypRef Expression
1 breq1 2065 . . . . . . . . . . . 12 (v = 1 → (vy ↔ 1 ≤ y))
21biraldv 1219 . . . . . . . . . . 11 (v = 1 → (∀yA vy ↔ ∀yA 1 ≤ y))
32imbi2d 464 . . . . . . . . . 10 (v = 1 → (((A ⊆ ℕ ∧ ¬ ∃xAyA xy) → ∀yA vy) ↔ ((A ⊆ ℕ ∧ ¬ ∃xAyA xy) → ∀yA 1 ≤ y)))
4 breq1 2065 . . . . . . . . . . . 12 (v = z → (vyzy))
54biraldv 1219 . . . . . . . . . . 11 (v = z → (∀yA vy ↔ ∀yA zy))
65imbi2d 464 . . . . . . . . . 10 (v = z → (((A ⊆ ℕ ∧ ¬ ∃xAyA xy) → ∀yA vy) ↔ ((A ⊆ ℕ ∧ ¬ ∃xAyA xy) → ∀yA zy)))
7 breq1 2065 . . . . . . . . . . . 12 (v = (z + 1) → (vy ↔ (z + 1) ≤ y))
87biraldv 1219 . . . . . . . . . . 11 (v = (z + 1) → (∀yA vy ↔ ∀yA (z + 1) ≤ y))
98imbi2d 464 . . . . . . . . . 10 (v = (z + 1) → (((A ⊆ ℕ ∧ ¬ ∃xAyA xy) → ∀yA vy) ↔ ((A ⊆ ℕ ∧ ¬ ∃xAyA xy) → ∀yA (z + 1) ≤ y)))
10 breq1 2065 . . . . . . . . . . . 12 (v = w → (vywy))
1110biraldv 1219 . . . . . . . . . . 11 (v = w → (∀yA vy ↔ ∀yA wy))
1211imbi2d 464 . . . . . . . . . 10 (v = w → (((A ⊆ ℕ ∧ ¬ ∃xAyA xy) → ∀yA vy) ↔ ((A ⊆ ℕ ∧ ¬ ∃xAyA xy) → ∀yA wy)))
13 ssel 1502 . . . . . . . . . . . . 13 (A ⊆ ℕ → (yAy ∈ ℕ))
14 nnge1t 4439 . . . . . . . . . . . . 13 (y ∈ ℕ → 1 ≤ y)
1513, 14syl6 23 . . . . . . . . . . . 12 (A ⊆ ℕ → (yA → 1 ≤ y))
1615r19.21aiv 1259 . . . . . . . . . . 11 (A ⊆ ℕ → ∀yA 1 ≤ y)
1716adantr 306 . . . . . . . . . 10 ((A ⊆ ℕ ∧ ¬ ∃xAyA xy) → ∀yA 1 ≤ y)
18 breq1 2065 . . . . . . . . . . . . . . . . . . . . 21 (x = z → (xyzy))
1918biraldv 1219 . . . . . . . . . . . . . . . . . . . 20 (x = z → (∀yA xy ↔ ∀yA zy))
2019rcla4ev 1403 . . . . . . . . . . . . . . . . . . 19 ((zA ∧ ∀yA zy) → ∃xAyA xy)
2120exp 291 . . . . . . . . . . . . . . . . . 18 (zA → (∀yA zy → ∃xAyA xy))
2221com12 13 . . . . . . . . . . . . . . . . 17 (∀yA zy → (zA → ∃xAyA xy))
2322con3d 87 . . . . . . . . . . . . . . . 16 (∀yA zy → (¬ ∃xAyA xy → ¬ zA))
2423com12 13 . . . . . . . . . . . . . . 15 (¬ ∃xAyA xy → (∀yA zy → ¬ zA))
25 letri3t 4283 . . . . . . . . . . . . . . . . . . . . . . . . . . 27 ((z ∈ ℝ ∧ y ∈ ℝ) → (z = y ↔ (zyyz)))
26 nnret 4427 . . . . . . . . . . . . . . . . . . . . . . . . . . 27 (z ∈ ℕ → z ∈ ℝ)
27 nnret 4427 . . . . . . . . . . . . . . . . . . . . . . . . . . 27 (y ∈ ℕ → y ∈ ℝ)
2825, 26, 27syl2an 349 . . . . . . . . . . . . . . . . . . . . . . . . . 26 ((z ∈ ℕ ∧ y ∈ ℕ) → (z = y ↔ (zyyz)))
29 nnleltp1t 4448 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 ((y ∈ ℕ ∧ z ∈ ℕ) → (yzy < (z + 1)))
3029ancoms 334 . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 ((z ∈ ℕ ∧ y ∈ ℕ) → (yzy < (z + 1)))
31 leltt 4278 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 (((z + 1) ∈ ℝ ∧ y ∈ ℝ) → ((z + 1) ≤ y ↔ ¬ y < (z + 1)))
32 ax1re 4064 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32 1 ∈ ℝ
33 axaddrcl 4067 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32 ((z ∈ ℝ ∧ 1 ∈ ℝ) → (z + 1) ∈ ℝ)
3432, 33mpan2 519 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 (z ∈ ℝ → (z + 1) ∈ ℝ)
3531, 34sylan 343 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30 ((z ∈ ℝ ∧ y ∈ ℝ) → ((z + 1) ≤ y ↔ ¬ y < (z + 1)))
3635bicon2d 404 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 ((z ∈ ℝ ∧ y ∈ ℝ) → (y < (z + 1) ↔ ¬ (z + 1) ≤ y))
3736, 26, 27syl2an 349 . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 ((z ∈ ℕ ∧ y ∈ ℕ) → (y < (z + 1) ↔ ¬ (z + 1) ≤ y))
3830, 37bitrd 406 . . . . . . . . . . . . . . . . . . . . . . . . . . 27 ((z ∈ ℕ ∧ y ∈ ℕ) → (yz ↔ ¬ (z + 1) ≤ y))
3938anbi2d 468 . . . . . . . . . . . . . . . . . . . . . . . . . 26 ((z ∈ ℕ ∧ y ∈ ℕ) → ((zyyz) ↔ (zy ∧ ¬ (z + 1) ≤ y)))
4028, 39bitrd 406 . . . . . . . . . . . . . . . . . . . . . . . . 25 ((z ∈ ℕ ∧ y ∈ ℕ) → (z = y ↔ (zy ∧ ¬ (z + 1) ≤ y)))
41 ssel2 1503 . . . . . . . . . . . . . . . . . . . . . . . . 25 ((A ⊆ ℕ ∧ yA) → y ∈ ℕ)
4240, 41sylan2 346 . . . . . . . . . . . . . . . . . . . . . . . 24 ((z ∈ ℕ ∧ (A ⊆ ℕ ∧ yA)) → (z = y ↔ (zy ∧ ¬ (z + 1) ≤ y)))
43 eleq1a 1158 . . . . . . . . . . . . . . . . . . . . . . . . 25 (yA → (z = yzA))
4443ad2antrr 323 . . . . . . . . . . . . . . . . . . . . . . . 24 ((z ∈ ℕ ∧ (A ⊆ ℕ ∧ yA)) → (z = yzA))
4542, 44sylbird 180 . . . . . . . . . . . . . . . . . . . . . . 23 ((z ∈ ℕ ∧ (A ⊆ ℕ ∧ yA)) → ((zy ∧ ¬ (z + 1) ≤ y) → zA))
4645exp3a 292 . . . . . . . . . . . . . . . . . . . . . 22 ((z ∈ ℕ ∧ (A ⊆ ℕ ∧ yA)) → (zy → (¬ (z + 1) ≤ yzA)))
47 con1 84 . . . . . . . . . . . . . . . . . . . . . 22 ((¬ (z + 1) ≤ yzA) → (¬ zA → (z + 1) ≤ y))
4846, 47syl6 23 . . . . . . . . . . . . . . . . . . . . 21 ((z ∈ ℕ ∧ (A ⊆ ℕ ∧ yA)) → (zy → (¬ zA → (z + 1) ≤ y)))
4948com23 32 . . . . . . . . . . . . . . . . . . . 20 ((z ∈ ℕ ∧ (A ⊆ ℕ ∧ yA)) → (¬ zA → (zy → (z + 1) ≤ y)))
5049exp32 294 . . . . . . . . . . . . . . . . . . 19 (z ∈ ℕ → (A ⊆ ℕ → (yA → (¬ zA → (zy → (z + 1) ≤ y)))))
5150com34 36 . . . . . . . . . . . . . . . . . 18 (z ∈ ℕ → (A ⊆ ℕ → (¬ zA → (yA → (zy → (z + 1) ≤ y)))))
5251imp41 286 . . . . . . . . . . . . . . . . 17 ((((z ∈ ℕ ∧ A ⊆ ℕ) ∧ ¬ zA) ∧ yA) → (zy → (z + 1) ≤ y))
5352r19.20dva 1256 . . . . . . . . . . . . . . . 16 (((z ∈ ℕ ∧ A ⊆ ℕ) ∧ ¬ zA) → (∀yA zy → ∀yA (z + 1) ≤ y))
5453exp 291 . . . . . . . . . . . . . . 15 ((z ∈ ℕ ∧ A ⊆ ℕ) → (¬ zA → (∀yA zy → ∀yA (z + 1) ≤ y)))
5524, 54sylan9r 360 . . . . . . . . . . . . . 14 (((z ∈ ℕ ∧ A ⊆ ℕ) ∧ ¬ ∃xAyA xy) → (∀yA zy → (∀yA zy → ∀yA (z + 1) ≤ y)))
5655pm2.43d 59 . . . . . . . . . . . . 13 (((z ∈ ℕ ∧ A ⊆ ℕ) ∧ ¬ ∃xAyA xy) → (∀yA zy → ∀yA (z + 1) ≤ y))
5756exp31 293 . . . . . . . . . . . 12 (z ∈ ℕ → (A ⊆ ℕ → (¬ ∃xAyA xy → (∀yA zy → ∀yA (z + 1) ≤ y))))
5857imp3a 279 . . . . . . . . . . 11 (z ∈ ℕ → ((A ⊆ ℕ ∧ ¬ ∃xAyA xy) → (∀yA zy → ∀yA (z + 1) ≤ y)))
5958a2d 15 . . . . . . . . . 10 (z ∈ ℕ → (((A ⊆ ℕ ∧ ¬ ∃xAyA xy) → ∀yA zy) → ((A ⊆ ℕ ∧ ¬ ∃xAyA xy) → ∀yA (z + 1) ≤ y)))
603, 6, 9, 12, 17, 59nnind 4434 . . . . . . . . 9 (w ∈ ℕ → ((A ⊆ ℕ ∧ ¬ ∃xAyA xy) → ∀yA wy))
61 breq1 2065 . . . . . . . . . . . . . . . 16 (x = w → (xywy))
6261biraldv 1219 . . . . . . . . . . . . . . 15 (x = w → (∀yA xy ↔ ∀yA wy))
6362rcla4ev 1403 . . . . . . . . . . . . . 14 ((wA ∧ ∀yA wy) → ∃xAyA xy)
6463exp 291 . . . . . . . . . . . . 13 (wA → (∀yA wy → ∃xAyA xy))
6564com12 13 . . . . . . . . . . . 12 (∀yA wy → (wA → ∃xAyA xy))
6665con3d 87 . . . . . . . . . . 11 (∀yA wy → (¬ ∃xAyA xy → ¬ wA))
6766com12 13 . . . . . . . . . 10 (¬ ∃xAyA xy → (∀yA wy → ¬ wA))
6867adantl 305 . . . . . . . . 9 ((A ⊆ ℕ ∧ ¬ ∃xAyA xy) → (∀yA wy → ¬ wA))
6960, 68sylcom 51 . . . . . . . 8 (w ∈ ℕ → ((A ⊆ ℕ ∧ ¬ ∃xAyA xy) → ¬ wA))
70 ssel 1502 . . . . . . . . . . 11 (A ⊆ ℕ → (wAw ∈ ℕ))
7170con3d 87 . . . . . . . . . 10 (A ⊆ ℕ → (¬ w ∈ ℕ → ¬ wA))
7271com12 13 . . . . . . . . 9 w ∈ ℕ → (A ⊆ ℕ → ¬ wA))
7372adantrd 308 . . . . . . . 8 w ∈ ℕ → ((A ⊆ ℕ ∧ ¬ ∃xAyA xy) → ¬ wA))
7469, 73pm2.61i 110 . . . . . . 7 ((A ⊆ ℕ ∧ ¬ ∃xAyA xy) → ¬ wA)
7574exp 291 . . . . . 6 (A ⊆ ℕ → (¬ ∃xAyA xy → ¬ wA))
767519.21adv 945 . . . . 5 (A ⊆ ℕ → (¬ ∃xAyA xy → ∀w ¬ wA))
77 eq0 1719 . . . . 5 (A = ∅ ↔ ∀w ¬ wA)
7876, 77syl6ibr 186 . . . 4 (A ⊆ ℕ → (¬ ∃xAyA xyA = ∅))
7978con1d 85 . . 3 (A ⊆ ℕ → (¬ A = ∅ → ∃xAyA xy))
80 df-ne 1192 . . 3 (A ≠ ∅ ↔ ¬ A = ∅)
8179, 80syl5ib 181 . 2 (A ⊆ ℕ → (A ≠ ∅ → ∃xAyA xy))
8281imp 277 1 ((A ⊆ ℕ ∧ A ≠ ∅) → ∃xAyA xy)
Colors of variables: wff set class
Syntax hints:  ¬ wn 1   → wi 2   ↔ wb 127   ∧ wa 196  ∀wal 672   = weq 797   = wceq 1091   ∈ wcel 1092   ≠ wne 1190  ∀wral 1201  ∃wrex 1202   ⊆ wss 1487  ∅c0 1707   class class class wbr 2054  (class class class)co 3001  ℝcr 4027  1c1 4029   + caddc 4031   < clt 4033   ≤ cle 4092  ℕcn 4093
This theorem was proved from axioms:  ax-1 3  ax-2 4  ax-3 5  ax-mp 6  ax-4 673  ax-5 674  ax-6 675  ax-7 676  ax-gen 677  ax-8 798  ax-9 799  ax-10 800  ax-11 801  ax-12 802  ax-13 804  ax-14 805  ax-16 922  ax-17 925  ax-ext 1074  ax-rep 1075  ax-un 1076  ax-pow 1077  ax-reg 1078  ax-inf 1079
This theorem depends on definitions:  df-bi 128  df-or 197  df-an 198  df-3or 582  df-3an 583  df-ex 679  df-sb 853  df-eu 1009  df-mo 1010  df-clab 1093  df-cleq 1097  df-clel 1099  df-ne 1192  df-ral 1205  df-rex 1206  df-reu 1207  df-rab 1208  df-v 1349  df-sbc 1441  df-dif 1489  df-un 1490  df-in 1491  df-ss 1492  df-pss 1494  df-nul 1708  df-if 1777  df-pw 1799  df-sn 1811  df-pr 1812  df-tp 1814  df-op 1815  df-uni 1920  df-int 1966  df-iun 1996  df-tr 2042  df-br 2063  df-opab 2098  df-eprel 2122  df-id 2125  df-po 2128  df-so 2138  df-fr 2169  df-we 2186  df-ord 2202  df-on 2203  df-lim 2204  df-suc 2205  df-om 2373  df-xp 2424  df-rel 2425  df-cnv 2426  df-co 2427  df-dm 2428  df-rn 2429  df-res 2430  df-ima 2431  df-fun 2432  df-fn 2433  df-f 2434  df-f1 2435  df-fv 2438  df-rdg 2970  df-opr 3003  df-oprab 3004  df-1o 3104  df-oadd 3106  df-omul 3107  df-er 3200  df-ec 3202  df-qs 3205  df-ni 3794  df-pli 3795  df-mi 3796  df-lti 3797  df-plpq 3829  df-mpq 3830  df-enq 3831  df-nq 3832  df-plq 3833  df-mq 3834  df-rq 3835  df-ltq 3836  df-1q 3837  df-np 3880  df-1p 3881  df-plp 3882  df-mp 3883  df-ltp 3884  df-plpr 3958  df-mpr 3959  df-enr 3960  df-nr 3961  df-plr 3962  df-mr 3963  df-ltr 3964  df-0r 3965  df-1r 3966  df-m1r 3967  df-c 4034  df-0 4035  df-1 4036  df-r 4038  df-plus 4039  df-mul 4040  df-lt 4041  df-sub 4133  df-neg 4135  df-le 4277  df-n 4423
metamath.org