Metamath Proof Explorer


Theorem nnne0

Description: A positive integer is nonzero. See nnne0ALT for a shorter proof using ax-pre-mulgt0 . This proof avoids 0lt1 , and thus ax-pre-mulgt0 , by splitting ax-1ne0 into the two separate cases 0 < 1 and 1 < 0 . (Contributed by NM, 27-Sep-1999) Remove dependency on ax-pre-mulgt0 . (Revised by Steven Nguyen, 30-Jan-2023)

Ref Expression
Assertion nnne0 AA0

Proof

Step Hyp Ref Expression
1 ax-1ne0 10
2 1re 1
3 0re 0
4 2 3 lttri2i 101<00<1
5 1 4 mpbi 1<00<1
6 breq1 x=1x<01<0
7 6 imbi2d x=11<0x<01<01<0
8 breq1 x=yx<0y<0
9 8 imbi2d x=y1<0x<01<0y<0
10 breq1 x=y+1x<0y+1<0
11 10 imbi2d x=y+11<0x<01<0y+1<0
12 breq1 x=Ax<0A<0
13 12 imbi2d x=A1<0x<01<0A<0
14 id 1<01<0
15 simp1 y1<0y<0y
16 15 nnred y1<0y<0y
17 1red y1<0y<01
18 16 17 readdcld y1<0y<0y+1
19 3 2 readdcli 0+1
20 19 a1i y1<0y<00+1
21 0red y1<0y<00
22 simp3 y1<0y<0y<0
23 16 21 17 22 ltadd1dd y1<0y<0y+1<0+1
24 ax-1cn 1
25 24 addlidi 0+1=1
26 simp2 y1<0y<01<0
27 25 26 eqbrtrid y1<0y<00+1<0
28 18 20 21 23 27 lttrd y1<0y<0y+1<0
29 28 3exp y1<0y<0y+1<0
30 29 a2d y1<0y<01<0y+1<0
31 7 9 11 13 14 30 nnind A1<0A<0
32 31 imp A1<0A<0
33 32 lt0ne0d A1<0A0
34 breq2 x=10<x0<1
35 34 imbi2d x=10<10<x0<10<1
36 breq2 x=y0<x0<y
37 36 imbi2d x=y0<10<x0<10<y
38 breq2 x=y+10<x0<y+1
39 38 imbi2d x=y+10<10<x0<10<y+1
40 breq2 x=A0<x0<A
41 40 imbi2d x=A0<10<x0<10<A
42 id 0<10<1
43 simp1 y0<10<yy
44 43 nnred y0<10<yy
45 1red y0<10<y1
46 simp3 y0<10<y0<y
47 simp2 y0<10<y0<1
48 44 45 46 47 addgt0d y0<10<y0<y+1
49 48 3exp y0<10<y0<y+1
50 49 a2d y0<10<y0<10<y+1
51 35 37 39 41 42 50 nnind A0<10<A
52 51 imp A0<10<A
53 52 gt0ne0d A0<1A0
54 33 53 jaodan A1<00<1A0
55 5 54 mpan2 AA0