Step |
Hyp |
Ref |
Expression |
1 |
|
zringlpirlem.i |
|- ( ph -> I e. ( LIdeal ` ZZring ) ) |
2 |
|
zringlpirlem.n0 |
|- ( ph -> I =/= { 0 } ) |
3 |
|
zringlpirlem.g |
|- G = inf ( ( I i^i NN ) , RR , < ) |
4 |
|
zringlpirlem.x |
|- ( ph -> X e. I ) |
5 |
|
zringbas |
|- ZZ = ( Base ` ZZring ) |
6 |
|
eqid |
|- ( LIdeal ` ZZring ) = ( LIdeal ` ZZring ) |
7 |
5 6
|
lidlss |
|- ( I e. ( LIdeal ` ZZring ) -> I C_ ZZ ) |
8 |
1 7
|
syl |
|- ( ph -> I C_ ZZ ) |
9 |
8 4
|
sseldd |
|- ( ph -> X e. ZZ ) |
10 |
9
|
zred |
|- ( ph -> X e. RR ) |
11 |
|
inss2 |
|- ( I i^i NN ) C_ NN |
12 |
|
nnuz |
|- NN = ( ZZ>= ` 1 ) |
13 |
11 12
|
sseqtri |
|- ( I i^i NN ) C_ ( ZZ>= ` 1 ) |
14 |
1 2
|
zringlpirlem1 |
|- ( ph -> ( I i^i NN ) =/= (/) ) |
15 |
|
infssuzcl |
|- ( ( ( I i^i NN ) C_ ( ZZ>= ` 1 ) /\ ( I i^i NN ) =/= (/) ) -> inf ( ( I i^i NN ) , RR , < ) e. ( I i^i NN ) ) |
16 |
13 14 15
|
sylancr |
|- ( ph -> inf ( ( I i^i NN ) , RR , < ) e. ( I i^i NN ) ) |
17 |
3 16
|
eqeltrid |
|- ( ph -> G e. ( I i^i NN ) ) |
18 |
17
|
elin2d |
|- ( ph -> G e. NN ) |
19 |
18
|
nnrpd |
|- ( ph -> G e. RR+ ) |
20 |
|
modlt |
|- ( ( X e. RR /\ G e. RR+ ) -> ( X mod G ) < G ) |
21 |
10 19 20
|
syl2anc |
|- ( ph -> ( X mod G ) < G ) |
22 |
9 18
|
zmodcld |
|- ( ph -> ( X mod G ) e. NN0 ) |
23 |
22
|
nn0red |
|- ( ph -> ( X mod G ) e. RR ) |
24 |
18
|
nnred |
|- ( ph -> G e. RR ) |
25 |
23 24
|
ltnled |
|- ( ph -> ( ( X mod G ) < G <-> -. G <_ ( X mod G ) ) ) |
26 |
21 25
|
mpbid |
|- ( ph -> -. G <_ ( X mod G ) ) |
27 |
9
|
zcnd |
|- ( ph -> X e. CC ) |
28 |
18
|
nncnd |
|- ( ph -> G e. CC ) |
29 |
10 18
|
nndivred |
|- ( ph -> ( X / G ) e. RR ) |
30 |
29
|
flcld |
|- ( ph -> ( |_ ` ( X / G ) ) e. ZZ ) |
31 |
30
|
zcnd |
|- ( ph -> ( |_ ` ( X / G ) ) e. CC ) |
32 |
28 31
|
mulcld |
|- ( ph -> ( G x. ( |_ ` ( X / G ) ) ) e. CC ) |
33 |
27 32
|
negsubd |
|- ( ph -> ( X + -u ( G x. ( |_ ` ( X / G ) ) ) ) = ( X - ( G x. ( |_ ` ( X / G ) ) ) ) ) |
34 |
30
|
znegcld |
|- ( ph -> -u ( |_ ` ( X / G ) ) e. ZZ ) |
35 |
34
|
zcnd |
|- ( ph -> -u ( |_ ` ( X / G ) ) e. CC ) |
36 |
35 28
|
mulcomd |
|- ( ph -> ( -u ( |_ ` ( X / G ) ) x. G ) = ( G x. -u ( |_ ` ( X / G ) ) ) ) |
37 |
28 31
|
mulneg2d |
|- ( ph -> ( G x. -u ( |_ ` ( X / G ) ) ) = -u ( G x. ( |_ ` ( X / G ) ) ) ) |
38 |
36 37
|
eqtrd |
|- ( ph -> ( -u ( |_ ` ( X / G ) ) x. G ) = -u ( G x. ( |_ ` ( X / G ) ) ) ) |
39 |
38
|
oveq2d |
|- ( ph -> ( X + ( -u ( |_ ` ( X / G ) ) x. G ) ) = ( X + -u ( G x. ( |_ ` ( X / G ) ) ) ) ) |
40 |
|
modval |
|- ( ( X e. RR /\ G e. RR+ ) -> ( X mod G ) = ( X - ( G x. ( |_ ` ( X / G ) ) ) ) ) |
41 |
10 19 40
|
syl2anc |
|- ( ph -> ( X mod G ) = ( X - ( G x. ( |_ ` ( X / G ) ) ) ) ) |
42 |
33 39 41
|
3eqtr4rd |
|- ( ph -> ( X mod G ) = ( X + ( -u ( |_ ` ( X / G ) ) x. G ) ) ) |
43 |
|
zringring |
|- ZZring e. Ring |
44 |
43
|
a1i |
|- ( ph -> ZZring e. Ring ) |
45 |
1 2 3
|
zringlpirlem2 |
|- ( ph -> G e. I ) |
46 |
|
zringmulr |
|- x. = ( .r ` ZZring ) |
47 |
6 5 46
|
lidlmcl |
|- ( ( ( ZZring e. Ring /\ I e. ( LIdeal ` ZZring ) ) /\ ( -u ( |_ ` ( X / G ) ) e. ZZ /\ G e. I ) ) -> ( -u ( |_ ` ( X / G ) ) x. G ) e. I ) |
48 |
44 1 34 45 47
|
syl22anc |
|- ( ph -> ( -u ( |_ ` ( X / G ) ) x. G ) e. I ) |
49 |
|
zringplusg |
|- + = ( +g ` ZZring ) |
50 |
6 49
|
lidlacl |
|- ( ( ( ZZring e. Ring /\ I e. ( LIdeal ` ZZring ) ) /\ ( X e. I /\ ( -u ( |_ ` ( X / G ) ) x. G ) e. I ) ) -> ( X + ( -u ( |_ ` ( X / G ) ) x. G ) ) e. I ) |
51 |
44 1 4 48 50
|
syl22anc |
|- ( ph -> ( X + ( -u ( |_ ` ( X / G ) ) x. G ) ) e. I ) |
52 |
42 51
|
eqeltrd |
|- ( ph -> ( X mod G ) e. I ) |
53 |
52
|
adantr |
|- ( ( ph /\ ( X mod G ) e. NN ) -> ( X mod G ) e. I ) |
54 |
|
simpr |
|- ( ( ph /\ ( X mod G ) e. NN ) -> ( X mod G ) e. NN ) |
55 |
53 54
|
elind |
|- ( ( ph /\ ( X mod G ) e. NN ) -> ( X mod G ) e. ( I i^i NN ) ) |
56 |
|
infssuzle |
|- ( ( ( I i^i NN ) C_ ( ZZ>= ` 1 ) /\ ( X mod G ) e. ( I i^i NN ) ) -> inf ( ( I i^i NN ) , RR , < ) <_ ( X mod G ) ) |
57 |
13 55 56
|
sylancr |
|- ( ( ph /\ ( X mod G ) e. NN ) -> inf ( ( I i^i NN ) , RR , < ) <_ ( X mod G ) ) |
58 |
3 57
|
eqbrtrid |
|- ( ( ph /\ ( X mod G ) e. NN ) -> G <_ ( X mod G ) ) |
59 |
26 58
|
mtand |
|- ( ph -> -. ( X mod G ) e. NN ) |
60 |
|
elnn0 |
|- ( ( X mod G ) e. NN0 <-> ( ( X mod G ) e. NN \/ ( X mod G ) = 0 ) ) |
61 |
22 60
|
sylib |
|- ( ph -> ( ( X mod G ) e. NN \/ ( X mod G ) = 0 ) ) |
62 |
|
orel1 |
|- ( -. ( X mod G ) e. NN -> ( ( ( X mod G ) e. NN \/ ( X mod G ) = 0 ) -> ( X mod G ) = 0 ) ) |
63 |
59 61 62
|
sylc |
|- ( ph -> ( X mod G ) = 0 ) |
64 |
|
dvdsval3 |
|- ( ( G e. NN /\ X e. ZZ ) -> ( G || X <-> ( X mod G ) = 0 ) ) |
65 |
18 9 64
|
syl2anc |
|- ( ph -> ( G || X <-> ( X mod G ) = 0 ) ) |
66 |
63 65
|
mpbird |
|- ( ph -> G || X ) |