Step |
Hyp |
Ref |
Expression |
1 |
|
brfi1ind.r |
|- Rel G |
2 |
|
brfi1ind.f |
|- F e. _V |
3 |
|
brfi1ind.1 |
|- ( ( v = V /\ e = E ) -> ( ps <-> ph ) ) |
4 |
|
brfi1ind.2 |
|- ( ( v = w /\ e = f ) -> ( ps <-> th ) ) |
5 |
|
brfi1ind.3 |
|- ( ( v G e /\ n e. v ) -> ( v \ { n } ) G F ) |
6 |
|
brfi1ind.4 |
|- ( ( w = ( v \ { n } ) /\ f = F ) -> ( th <-> ch ) ) |
7 |
|
brfi1ind.base |
|- ( ( v G e /\ ( # ` v ) = 0 ) -> ps ) |
8 |
|
brfi1ind.step |
|- ( ( ( ( y + 1 ) e. NN0 /\ ( v G e /\ ( # ` v ) = ( y + 1 ) /\ n e. v ) ) /\ ch ) -> ps ) |
9 |
|
hashcl |
|- ( V e. Fin -> ( # ` V ) e. NN0 ) |
10 |
|
dfclel |
|- ( ( # ` V ) e. NN0 <-> E. n ( n = ( # ` V ) /\ n e. NN0 ) ) |
11 |
|
eqeq2 |
|- ( x = 0 -> ( ( # ` v ) = x <-> ( # ` v ) = 0 ) ) |
12 |
11
|
anbi2d |
|- ( x = 0 -> ( ( v G e /\ ( # ` v ) = x ) <-> ( v G e /\ ( # ` v ) = 0 ) ) ) |
13 |
12
|
imbi1d |
|- ( x = 0 -> ( ( ( v G e /\ ( # ` v ) = x ) -> ps ) <-> ( ( v G e /\ ( # ` v ) = 0 ) -> ps ) ) ) |
14 |
13
|
2albidv |
|- ( x = 0 -> ( A. v A. e ( ( v G e /\ ( # ` v ) = x ) -> ps ) <-> A. v A. e ( ( v G e /\ ( # ` v ) = 0 ) -> ps ) ) ) |
15 |
|
eqeq2 |
|- ( x = y -> ( ( # ` v ) = x <-> ( # ` v ) = y ) ) |
16 |
15
|
anbi2d |
|- ( x = y -> ( ( v G e /\ ( # ` v ) = x ) <-> ( v G e /\ ( # ` v ) = y ) ) ) |
17 |
16
|
imbi1d |
|- ( x = y -> ( ( ( v G e /\ ( # ` v ) = x ) -> ps ) <-> ( ( v G e /\ ( # ` v ) = y ) -> ps ) ) ) |
18 |
17
|
2albidv |
|- ( x = y -> ( A. v A. e ( ( v G e /\ ( # ` v ) = x ) -> ps ) <-> A. v A. e ( ( v G e /\ ( # ` v ) = y ) -> ps ) ) ) |
19 |
|
eqeq2 |
|- ( x = ( y + 1 ) -> ( ( # ` v ) = x <-> ( # ` v ) = ( y + 1 ) ) ) |
20 |
19
|
anbi2d |
|- ( x = ( y + 1 ) -> ( ( v G e /\ ( # ` v ) = x ) <-> ( v G e /\ ( # ` v ) = ( y + 1 ) ) ) ) |
21 |
20
|
imbi1d |
|- ( x = ( y + 1 ) -> ( ( ( v G e /\ ( # ` v ) = x ) -> ps ) <-> ( ( v G e /\ ( # ` v ) = ( y + 1 ) ) -> ps ) ) ) |
22 |
21
|
2albidv |
|- ( x = ( y + 1 ) -> ( A. v A. e ( ( v G e /\ ( # ` v ) = x ) -> ps ) <-> A. v A. e ( ( v G e /\ ( # ` v ) = ( y + 1 ) ) -> ps ) ) ) |
23 |
|
eqeq2 |
|- ( x = n -> ( ( # ` v ) = x <-> ( # ` v ) = n ) ) |
24 |
23
|
anbi2d |
|- ( x = n -> ( ( v G e /\ ( # ` v ) = x ) <-> ( v G e /\ ( # ` v ) = n ) ) ) |
25 |
24
|
imbi1d |
|- ( x = n -> ( ( ( v G e /\ ( # ` v ) = x ) -> ps ) <-> ( ( v G e /\ ( # ` v ) = n ) -> ps ) ) ) |
26 |
25
|
2albidv |
|- ( x = n -> ( A. v A. e ( ( v G e /\ ( # ` v ) = x ) -> ps ) <-> A. v A. e ( ( v G e /\ ( # ` v ) = n ) -> ps ) ) ) |
27 |
7
|
gen2 |
|- A. v A. e ( ( v G e /\ ( # ` v ) = 0 ) -> ps ) |
28 |
|
breq12 |
|- ( ( v = w /\ e = f ) -> ( v G e <-> w G f ) ) |
29 |
|
fveqeq2 |
|- ( v = w -> ( ( # ` v ) = y <-> ( # ` w ) = y ) ) |
30 |
29
|
adantr |
|- ( ( v = w /\ e = f ) -> ( ( # ` v ) = y <-> ( # ` w ) = y ) ) |
31 |
28 30
|
anbi12d |
|- ( ( v = w /\ e = f ) -> ( ( v G e /\ ( # ` v ) = y ) <-> ( w G f /\ ( # ` w ) = y ) ) ) |
32 |
31 4
|
imbi12d |
|- ( ( v = w /\ e = f ) -> ( ( ( v G e /\ ( # ` v ) = y ) -> ps ) <-> ( ( w G f /\ ( # ` w ) = y ) -> th ) ) ) |
33 |
32
|
cbval2vw |
|- ( A. v A. e ( ( v G e /\ ( # ` v ) = y ) -> ps ) <-> A. w A. f ( ( w G f /\ ( # ` w ) = y ) -> th ) ) |
34 |
|
nn0p1gt0 |
|- ( y e. NN0 -> 0 < ( y + 1 ) ) |
35 |
34
|
adantr |
|- ( ( y e. NN0 /\ ( # ` v ) = ( y + 1 ) ) -> 0 < ( y + 1 ) ) |
36 |
|
simpr |
|- ( ( y e. NN0 /\ ( # ` v ) = ( y + 1 ) ) -> ( # ` v ) = ( y + 1 ) ) |
37 |
35 36
|
breqtrrd |
|- ( ( y e. NN0 /\ ( # ` v ) = ( y + 1 ) ) -> 0 < ( # ` v ) ) |
38 |
37
|
adantrl |
|- ( ( y e. NN0 /\ ( v G e /\ ( # ` v ) = ( y + 1 ) ) ) -> 0 < ( # ` v ) ) |
39 |
|
hashgt0elex |
|- ( ( v e. _V /\ 0 < ( # ` v ) ) -> E. n n e. v ) |
40 |
|
vex |
|- v e. _V |
41 |
|
simpr |
|- ( ( y e. NN0 /\ n e. v ) -> n e. v ) |
42 |
|
simpl |
|- ( ( y e. NN0 /\ n e. v ) -> y e. NN0 ) |
43 |
|
hashdifsnp1 |
|- ( ( v e. _V /\ n e. v /\ y e. NN0 ) -> ( ( # ` v ) = ( y + 1 ) -> ( # ` ( v \ { n } ) ) = y ) ) |
44 |
40 41 42 43
|
mp3an2i |
|- ( ( y e. NN0 /\ n e. v ) -> ( ( # ` v ) = ( y + 1 ) -> ( # ` ( v \ { n } ) ) = y ) ) |
45 |
44
|
imp |
|- ( ( ( y e. NN0 /\ n e. v ) /\ ( # ` v ) = ( y + 1 ) ) -> ( # ` ( v \ { n } ) ) = y ) |
46 |
|
peano2nn0 |
|- ( y e. NN0 -> ( y + 1 ) e. NN0 ) |
47 |
46
|
ad2antrr |
|- ( ( ( y e. NN0 /\ n e. v ) /\ ( # ` v ) = ( y + 1 ) ) -> ( y + 1 ) e. NN0 ) |
48 |
47
|
ad2antlr |
|- ( ( ( ( A. w A. f ( ( w G f /\ ( # ` w ) = y ) -> th ) /\ ( v \ { n } ) G F ) /\ ( ( y e. NN0 /\ n e. v ) /\ ( # ` v ) = ( y + 1 ) ) ) /\ v G e ) -> ( y + 1 ) e. NN0 ) |
49 |
|
simpr |
|- ( ( ( ( A. w A. f ( ( w G f /\ ( # ` w ) = y ) -> th ) /\ ( v \ { n } ) G F ) /\ ( ( y e. NN0 /\ n e. v ) /\ ( # ` v ) = ( y + 1 ) ) ) /\ v G e ) -> v G e ) |
50 |
|
simplrr |
|- ( ( ( ( A. w A. f ( ( w G f /\ ( # ` w ) = y ) -> th ) /\ ( v \ { n } ) G F ) /\ ( ( y e. NN0 /\ n e. v ) /\ ( # ` v ) = ( y + 1 ) ) ) /\ v G e ) -> ( # ` v ) = ( y + 1 ) ) |
51 |
|
simprlr |
|- ( ( ( A. w A. f ( ( w G f /\ ( # ` w ) = y ) -> th ) /\ ( v \ { n } ) G F ) /\ ( ( y e. NN0 /\ n e. v ) /\ ( # ` v ) = ( y + 1 ) ) ) -> n e. v ) |
52 |
51
|
adantr |
|- ( ( ( ( A. w A. f ( ( w G f /\ ( # ` w ) = y ) -> th ) /\ ( v \ { n } ) G F ) /\ ( ( y e. NN0 /\ n e. v ) /\ ( # ` v ) = ( y + 1 ) ) ) /\ v G e ) -> n e. v ) |
53 |
49 50 52
|
3jca |
|- ( ( ( ( A. w A. f ( ( w G f /\ ( # ` w ) = y ) -> th ) /\ ( v \ { n } ) G F ) /\ ( ( y e. NN0 /\ n e. v ) /\ ( # ` v ) = ( y + 1 ) ) ) /\ v G e ) -> ( v G e /\ ( # ` v ) = ( y + 1 ) /\ n e. v ) ) |
54 |
48 53
|
jca |
|- ( ( ( ( A. w A. f ( ( w G f /\ ( # ` w ) = y ) -> th ) /\ ( v \ { n } ) G F ) /\ ( ( y e. NN0 /\ n e. v ) /\ ( # ` v ) = ( y + 1 ) ) ) /\ v G e ) -> ( ( y + 1 ) e. NN0 /\ ( v G e /\ ( # ` v ) = ( y + 1 ) /\ n e. v ) ) ) |
55 |
40
|
difexi |
|- ( v \ { n } ) e. _V |
56 |
|
breq12 |
|- ( ( w = ( v \ { n } ) /\ f = F ) -> ( w G f <-> ( v \ { n } ) G F ) ) |
57 |
|
fveqeq2 |
|- ( w = ( v \ { n } ) -> ( ( # ` w ) = y <-> ( # ` ( v \ { n } ) ) = y ) ) |
58 |
57
|
adantr |
|- ( ( w = ( v \ { n } ) /\ f = F ) -> ( ( # ` w ) = y <-> ( # ` ( v \ { n } ) ) = y ) ) |
59 |
56 58
|
anbi12d |
|- ( ( w = ( v \ { n } ) /\ f = F ) -> ( ( w G f /\ ( # ` w ) = y ) <-> ( ( v \ { n } ) G F /\ ( # ` ( v \ { n } ) ) = y ) ) ) |
60 |
59 6
|
imbi12d |
|- ( ( w = ( v \ { n } ) /\ f = F ) -> ( ( ( w G f /\ ( # ` w ) = y ) -> th ) <-> ( ( ( v \ { n } ) G F /\ ( # ` ( v \ { n } ) ) = y ) -> ch ) ) ) |
61 |
60
|
spc2gv |
|- ( ( ( v \ { n } ) e. _V /\ F e. _V ) -> ( A. w A. f ( ( w G f /\ ( # ` w ) = y ) -> th ) -> ( ( ( v \ { n } ) G F /\ ( # ` ( v \ { n } ) ) = y ) -> ch ) ) ) |
62 |
55 2 61
|
mp2an |
|- ( A. w A. f ( ( w G f /\ ( # ` w ) = y ) -> th ) -> ( ( ( v \ { n } ) G F /\ ( # ` ( v \ { n } ) ) = y ) -> ch ) ) |
63 |
62
|
expdimp |
|- ( ( A. w A. f ( ( w G f /\ ( # ` w ) = y ) -> th ) /\ ( v \ { n } ) G F ) -> ( ( # ` ( v \ { n } ) ) = y -> ch ) ) |
64 |
63
|
ad2antrr |
|- ( ( ( ( A. w A. f ( ( w G f /\ ( # ` w ) = y ) -> th ) /\ ( v \ { n } ) G F ) /\ ( ( y e. NN0 /\ n e. v ) /\ ( # ` v ) = ( y + 1 ) ) ) /\ v G e ) -> ( ( # ` ( v \ { n } ) ) = y -> ch ) ) |
65 |
54 64 8
|
syl6an |
|- ( ( ( ( A. w A. f ( ( w G f /\ ( # ` w ) = y ) -> th ) /\ ( v \ { n } ) G F ) /\ ( ( y e. NN0 /\ n e. v ) /\ ( # ` v ) = ( y + 1 ) ) ) /\ v G e ) -> ( ( # ` ( v \ { n } ) ) = y -> ps ) ) |
66 |
65
|
exp41 |
|- ( A. w A. f ( ( w G f /\ ( # ` w ) = y ) -> th ) -> ( ( v \ { n } ) G F -> ( ( ( y e. NN0 /\ n e. v ) /\ ( # ` v ) = ( y + 1 ) ) -> ( v G e -> ( ( # ` ( v \ { n } ) ) = y -> ps ) ) ) ) ) |
67 |
66
|
com15 |
|- ( ( # ` ( v \ { n } ) ) = y -> ( ( v \ { n } ) G F -> ( ( ( y e. NN0 /\ n e. v ) /\ ( # ` v ) = ( y + 1 ) ) -> ( v G e -> ( A. w A. f ( ( w G f /\ ( # ` w ) = y ) -> th ) -> ps ) ) ) ) ) |
68 |
67
|
com23 |
|- ( ( # ` ( v \ { n } ) ) = y -> ( ( ( y e. NN0 /\ n e. v ) /\ ( # ` v ) = ( y + 1 ) ) -> ( ( v \ { n } ) G F -> ( v G e -> ( A. w A. f ( ( w G f /\ ( # ` w ) = y ) -> th ) -> ps ) ) ) ) ) |
69 |
45 68
|
mpcom |
|- ( ( ( y e. NN0 /\ n e. v ) /\ ( # ` v ) = ( y + 1 ) ) -> ( ( v \ { n } ) G F -> ( v G e -> ( A. w A. f ( ( w G f /\ ( # ` w ) = y ) -> th ) -> ps ) ) ) ) |
70 |
69
|
ex |
|- ( ( y e. NN0 /\ n e. v ) -> ( ( # ` v ) = ( y + 1 ) -> ( ( v \ { n } ) G F -> ( v G e -> ( A. w A. f ( ( w G f /\ ( # ` w ) = y ) -> th ) -> ps ) ) ) ) ) |
71 |
70
|
com23 |
|- ( ( y e. NN0 /\ n e. v ) -> ( ( v \ { n } ) G F -> ( ( # ` v ) = ( y + 1 ) -> ( v G e -> ( A. w A. f ( ( w G f /\ ( # ` w ) = y ) -> th ) -> ps ) ) ) ) ) |
72 |
71
|
ex |
|- ( y e. NN0 -> ( n e. v -> ( ( v \ { n } ) G F -> ( ( # ` v ) = ( y + 1 ) -> ( v G e -> ( A. w A. f ( ( w G f /\ ( # ` w ) = y ) -> th ) -> ps ) ) ) ) ) ) |
73 |
72
|
com15 |
|- ( v G e -> ( n e. v -> ( ( v \ { n } ) G F -> ( ( # ` v ) = ( y + 1 ) -> ( y e. NN0 -> ( A. w A. f ( ( w G f /\ ( # ` w ) = y ) -> th ) -> ps ) ) ) ) ) ) |
74 |
73
|
imp |
|- ( ( v G e /\ n e. v ) -> ( ( v \ { n } ) G F -> ( ( # ` v ) = ( y + 1 ) -> ( y e. NN0 -> ( A. w A. f ( ( w G f /\ ( # ` w ) = y ) -> th ) -> ps ) ) ) ) ) |
75 |
5 74
|
mpd |
|- ( ( v G e /\ n e. v ) -> ( ( # ` v ) = ( y + 1 ) -> ( y e. NN0 -> ( A. w A. f ( ( w G f /\ ( # ` w ) = y ) -> th ) -> ps ) ) ) ) |
76 |
75
|
ex |
|- ( v G e -> ( n e. v -> ( ( # ` v ) = ( y + 1 ) -> ( y e. NN0 -> ( A. w A. f ( ( w G f /\ ( # ` w ) = y ) -> th ) -> ps ) ) ) ) ) |
77 |
76
|
com4l |
|- ( n e. v -> ( ( # ` v ) = ( y + 1 ) -> ( y e. NN0 -> ( v G e -> ( A. w A. f ( ( w G f /\ ( # ` w ) = y ) -> th ) -> ps ) ) ) ) ) |
78 |
77
|
exlimiv |
|- ( E. n n e. v -> ( ( # ` v ) = ( y + 1 ) -> ( y e. NN0 -> ( v G e -> ( A. w A. f ( ( w G f /\ ( # ` w ) = y ) -> th ) -> ps ) ) ) ) ) |
79 |
39 78
|
syl |
|- ( ( v e. _V /\ 0 < ( # ` v ) ) -> ( ( # ` v ) = ( y + 1 ) -> ( y e. NN0 -> ( v G e -> ( A. w A. f ( ( w G f /\ ( # ` w ) = y ) -> th ) -> ps ) ) ) ) ) |
80 |
79
|
ex |
|- ( v e. _V -> ( 0 < ( # ` v ) -> ( ( # ` v ) = ( y + 1 ) -> ( y e. NN0 -> ( v G e -> ( A. w A. f ( ( w G f /\ ( # ` w ) = y ) -> th ) -> ps ) ) ) ) ) ) |
81 |
80
|
com25 |
|- ( v e. _V -> ( v G e -> ( ( # ` v ) = ( y + 1 ) -> ( y e. NN0 -> ( 0 < ( # ` v ) -> ( A. w A. f ( ( w G f /\ ( # ` w ) = y ) -> th ) -> ps ) ) ) ) ) ) |
82 |
81
|
elv |
|- ( v G e -> ( ( # ` v ) = ( y + 1 ) -> ( y e. NN0 -> ( 0 < ( # ` v ) -> ( A. w A. f ( ( w G f /\ ( # ` w ) = y ) -> th ) -> ps ) ) ) ) ) |
83 |
82
|
imp |
|- ( ( v G e /\ ( # ` v ) = ( y + 1 ) ) -> ( y e. NN0 -> ( 0 < ( # ` v ) -> ( A. w A. f ( ( w G f /\ ( # ` w ) = y ) -> th ) -> ps ) ) ) ) |
84 |
83
|
impcom |
|- ( ( y e. NN0 /\ ( v G e /\ ( # ` v ) = ( y + 1 ) ) ) -> ( 0 < ( # ` v ) -> ( A. w A. f ( ( w G f /\ ( # ` w ) = y ) -> th ) -> ps ) ) ) |
85 |
38 84
|
mpd |
|- ( ( y e. NN0 /\ ( v G e /\ ( # ` v ) = ( y + 1 ) ) ) -> ( A. w A. f ( ( w G f /\ ( # ` w ) = y ) -> th ) -> ps ) ) |
86 |
85
|
impancom |
|- ( ( y e. NN0 /\ A. w A. f ( ( w G f /\ ( # ` w ) = y ) -> th ) ) -> ( ( v G e /\ ( # ` v ) = ( y + 1 ) ) -> ps ) ) |
87 |
86
|
alrimivv |
|- ( ( y e. NN0 /\ A. w A. f ( ( w G f /\ ( # ` w ) = y ) -> th ) ) -> A. v A. e ( ( v G e /\ ( # ` v ) = ( y + 1 ) ) -> ps ) ) |
88 |
87
|
ex |
|- ( y e. NN0 -> ( A. w A. f ( ( w G f /\ ( # ` w ) = y ) -> th ) -> A. v A. e ( ( v G e /\ ( # ` v ) = ( y + 1 ) ) -> ps ) ) ) |
89 |
33 88
|
syl5bi |
|- ( y e. NN0 -> ( A. v A. e ( ( v G e /\ ( # ` v ) = y ) -> ps ) -> A. v A. e ( ( v G e /\ ( # ` v ) = ( y + 1 ) ) -> ps ) ) ) |
90 |
14 18 22 26 27 89
|
nn0ind |
|- ( n e. NN0 -> A. v A. e ( ( v G e /\ ( # ` v ) = n ) -> ps ) ) |
91 |
1
|
brrelex12i |
|- ( V G E -> ( V e. _V /\ E e. _V ) ) |
92 |
|
breq12 |
|- ( ( v = V /\ e = E ) -> ( v G e <-> V G E ) ) |
93 |
|
fveqeq2 |
|- ( v = V -> ( ( # ` v ) = n <-> ( # ` V ) = n ) ) |
94 |
93
|
adantr |
|- ( ( v = V /\ e = E ) -> ( ( # ` v ) = n <-> ( # ` V ) = n ) ) |
95 |
92 94
|
anbi12d |
|- ( ( v = V /\ e = E ) -> ( ( v G e /\ ( # ` v ) = n ) <-> ( V G E /\ ( # ` V ) = n ) ) ) |
96 |
95 3
|
imbi12d |
|- ( ( v = V /\ e = E ) -> ( ( ( v G e /\ ( # ` v ) = n ) -> ps ) <-> ( ( V G E /\ ( # ` V ) = n ) -> ph ) ) ) |
97 |
96
|
spc2gv |
|- ( ( V e. _V /\ E e. _V ) -> ( A. v A. e ( ( v G e /\ ( # ` v ) = n ) -> ps ) -> ( ( V G E /\ ( # ` V ) = n ) -> ph ) ) ) |
98 |
97
|
com23 |
|- ( ( V e. _V /\ E e. _V ) -> ( ( V G E /\ ( # ` V ) = n ) -> ( A. v A. e ( ( v G e /\ ( # ` v ) = n ) -> ps ) -> ph ) ) ) |
99 |
98
|
expd |
|- ( ( V e. _V /\ E e. _V ) -> ( V G E -> ( ( # ` V ) = n -> ( A. v A. e ( ( v G e /\ ( # ` v ) = n ) -> ps ) -> ph ) ) ) ) |
100 |
91 99
|
mpcom |
|- ( V G E -> ( ( # ` V ) = n -> ( A. v A. e ( ( v G e /\ ( # ` v ) = n ) -> ps ) -> ph ) ) ) |
101 |
100
|
imp |
|- ( ( V G E /\ ( # ` V ) = n ) -> ( A. v A. e ( ( v G e /\ ( # ` v ) = n ) -> ps ) -> ph ) ) |
102 |
90 101
|
syl5 |
|- ( ( V G E /\ ( # ` V ) = n ) -> ( n e. NN0 -> ph ) ) |
103 |
102
|
expcom |
|- ( ( # ` V ) = n -> ( V G E -> ( n e. NN0 -> ph ) ) ) |
104 |
103
|
com23 |
|- ( ( # ` V ) = n -> ( n e. NN0 -> ( V G E -> ph ) ) ) |
105 |
104
|
eqcoms |
|- ( n = ( # ` V ) -> ( n e. NN0 -> ( V G E -> ph ) ) ) |
106 |
105
|
imp |
|- ( ( n = ( # ` V ) /\ n e. NN0 ) -> ( V G E -> ph ) ) |
107 |
106
|
exlimiv |
|- ( E. n ( n = ( # ` V ) /\ n e. NN0 ) -> ( V G E -> ph ) ) |
108 |
10 107
|
sylbi |
|- ( ( # ` V ) e. NN0 -> ( V G E -> ph ) ) |
109 |
9 108
|
syl |
|- ( V e. Fin -> ( V G E -> ph ) ) |
110 |
109
|
impcom |
|- ( ( V G E /\ V e. Fin ) -> ph ) |