| Step |
Hyp |
Ref |
Expression |
| 1 |
|
fprodsplit.1 |
|- ( ph -> ( A i^i B ) = (/) ) |
| 2 |
|
fprodsplit.2 |
|- ( ph -> U = ( A u. B ) ) |
| 3 |
|
fprodsplit.3 |
|- ( ph -> U e. Fin ) |
| 4 |
|
fprodsplit.4 |
|- ( ( ph /\ k e. U ) -> C e. CC ) |
| 5 |
|
iftrue |
|- ( k e. A -> if ( k e. A , C , 1 ) = C ) |
| 6 |
5
|
prodeq2i |
|- prod_ k e. A if ( k e. A , C , 1 ) = prod_ k e. A C |
| 7 |
|
ssun1 |
|- A C_ ( A u. B ) |
| 8 |
7 2
|
sseqtrrid |
|- ( ph -> A C_ U ) |
| 9 |
5
|
adantl |
|- ( ( ph /\ k e. A ) -> if ( k e. A , C , 1 ) = C ) |
| 10 |
8
|
sselda |
|- ( ( ph /\ k e. A ) -> k e. U ) |
| 11 |
10 4
|
syldan |
|- ( ( ph /\ k e. A ) -> C e. CC ) |
| 12 |
9 11
|
eqeltrd |
|- ( ( ph /\ k e. A ) -> if ( k e. A , C , 1 ) e. CC ) |
| 13 |
|
eldifn |
|- ( k e. ( U \ A ) -> -. k e. A ) |
| 14 |
13
|
iffalsed |
|- ( k e. ( U \ A ) -> if ( k e. A , C , 1 ) = 1 ) |
| 15 |
14
|
adantl |
|- ( ( ph /\ k e. ( U \ A ) ) -> if ( k e. A , C , 1 ) = 1 ) |
| 16 |
8 12 15 3
|
fprodss |
|- ( ph -> prod_ k e. A if ( k e. A , C , 1 ) = prod_ k e. U if ( k e. A , C , 1 ) ) |
| 17 |
6 16
|
eqtr3id |
|- ( ph -> prod_ k e. A C = prod_ k e. U if ( k e. A , C , 1 ) ) |
| 18 |
|
iftrue |
|- ( k e. B -> if ( k e. B , C , 1 ) = C ) |
| 19 |
18
|
prodeq2i |
|- prod_ k e. B if ( k e. B , C , 1 ) = prod_ k e. B C |
| 20 |
|
ssun2 |
|- B C_ ( A u. B ) |
| 21 |
20 2
|
sseqtrrid |
|- ( ph -> B C_ U ) |
| 22 |
18
|
adantl |
|- ( ( ph /\ k e. B ) -> if ( k e. B , C , 1 ) = C ) |
| 23 |
21
|
sselda |
|- ( ( ph /\ k e. B ) -> k e. U ) |
| 24 |
23 4
|
syldan |
|- ( ( ph /\ k e. B ) -> C e. CC ) |
| 25 |
22 24
|
eqeltrd |
|- ( ( ph /\ k e. B ) -> if ( k e. B , C , 1 ) e. CC ) |
| 26 |
|
eldifn |
|- ( k e. ( U \ B ) -> -. k e. B ) |
| 27 |
26
|
iffalsed |
|- ( k e. ( U \ B ) -> if ( k e. B , C , 1 ) = 1 ) |
| 28 |
27
|
adantl |
|- ( ( ph /\ k e. ( U \ B ) ) -> if ( k e. B , C , 1 ) = 1 ) |
| 29 |
21 25 28 3
|
fprodss |
|- ( ph -> prod_ k e. B if ( k e. B , C , 1 ) = prod_ k e. U if ( k e. B , C , 1 ) ) |
| 30 |
19 29
|
eqtr3id |
|- ( ph -> prod_ k e. B C = prod_ k e. U if ( k e. B , C , 1 ) ) |
| 31 |
17 30
|
oveq12d |
|- ( ph -> ( prod_ k e. A C x. prod_ k e. B C ) = ( prod_ k e. U if ( k e. A , C , 1 ) x. prod_ k e. U if ( k e. B , C , 1 ) ) ) |
| 32 |
|
ax-1cn |
|- 1 e. CC |
| 33 |
|
ifcl |
|- ( ( C e. CC /\ 1 e. CC ) -> if ( k e. A , C , 1 ) e. CC ) |
| 34 |
4 32 33
|
sylancl |
|- ( ( ph /\ k e. U ) -> if ( k e. A , C , 1 ) e. CC ) |
| 35 |
|
ifcl |
|- ( ( C e. CC /\ 1 e. CC ) -> if ( k e. B , C , 1 ) e. CC ) |
| 36 |
4 32 35
|
sylancl |
|- ( ( ph /\ k e. U ) -> if ( k e. B , C , 1 ) e. CC ) |
| 37 |
3 34 36
|
fprodmul |
|- ( ph -> prod_ k e. U ( if ( k e. A , C , 1 ) x. if ( k e. B , C , 1 ) ) = ( prod_ k e. U if ( k e. A , C , 1 ) x. prod_ k e. U if ( k e. B , C , 1 ) ) ) |
| 38 |
2
|
eleq2d |
|- ( ph -> ( k e. U <-> k e. ( A u. B ) ) ) |
| 39 |
|
elun |
|- ( k e. ( A u. B ) <-> ( k e. A \/ k e. B ) ) |
| 40 |
38 39
|
bitrdi |
|- ( ph -> ( k e. U <-> ( k e. A \/ k e. B ) ) ) |
| 41 |
40
|
biimpa |
|- ( ( ph /\ k e. U ) -> ( k e. A \/ k e. B ) ) |
| 42 |
|
disjel |
|- ( ( ( A i^i B ) = (/) /\ k e. A ) -> -. k e. B ) |
| 43 |
1 42
|
sylan |
|- ( ( ph /\ k e. A ) -> -. k e. B ) |
| 44 |
43
|
iffalsed |
|- ( ( ph /\ k e. A ) -> if ( k e. B , C , 1 ) = 1 ) |
| 45 |
9 44
|
oveq12d |
|- ( ( ph /\ k e. A ) -> ( if ( k e. A , C , 1 ) x. if ( k e. B , C , 1 ) ) = ( C x. 1 ) ) |
| 46 |
11
|
mulridd |
|- ( ( ph /\ k e. A ) -> ( C x. 1 ) = C ) |
| 47 |
45 46
|
eqtrd |
|- ( ( ph /\ k e. A ) -> ( if ( k e. A , C , 1 ) x. if ( k e. B , C , 1 ) ) = C ) |
| 48 |
43
|
ex |
|- ( ph -> ( k e. A -> -. k e. B ) ) |
| 49 |
48
|
con2d |
|- ( ph -> ( k e. B -> -. k e. A ) ) |
| 50 |
49
|
imp |
|- ( ( ph /\ k e. B ) -> -. k e. A ) |
| 51 |
50
|
iffalsed |
|- ( ( ph /\ k e. B ) -> if ( k e. A , C , 1 ) = 1 ) |
| 52 |
51 22
|
oveq12d |
|- ( ( ph /\ k e. B ) -> ( if ( k e. A , C , 1 ) x. if ( k e. B , C , 1 ) ) = ( 1 x. C ) ) |
| 53 |
24
|
mullidd |
|- ( ( ph /\ k e. B ) -> ( 1 x. C ) = C ) |
| 54 |
52 53
|
eqtrd |
|- ( ( ph /\ k e. B ) -> ( if ( k e. A , C , 1 ) x. if ( k e. B , C , 1 ) ) = C ) |
| 55 |
47 54
|
jaodan |
|- ( ( ph /\ ( k e. A \/ k e. B ) ) -> ( if ( k e. A , C , 1 ) x. if ( k e. B , C , 1 ) ) = C ) |
| 56 |
41 55
|
syldan |
|- ( ( ph /\ k e. U ) -> ( if ( k e. A , C , 1 ) x. if ( k e. B , C , 1 ) ) = C ) |
| 57 |
56
|
prodeq2dv |
|- ( ph -> prod_ k e. U ( if ( k e. A , C , 1 ) x. if ( k e. B , C , 1 ) ) = prod_ k e. U C ) |
| 58 |
31 37 57
|
3eqtr2rd |
|- ( ph -> prod_ k e. U C = ( prod_ k e. A C x. prod_ k e. B C ) ) |