Step | Hyp | Ref | Expression |
1 |
|
bitr |
(p e. Xp A (B u. C) <-> fst p e. A /\ snd p e. B u. C) ->
(fst p e. A /\ snd p e. B u. C <-> p e. Xp A B u. Xp A C) ->
(p e. Xp A (B u. C) <-> p e. Xp A B u. Xp A C) |
2 |
|
elxp |
p e. Xp A (B u. C) <-> fst p e. A /\ snd p e. B u. C |
3 |
1, 2 |
ax_mp |
(fst p e. A /\ snd p e. B u. C <-> p e. Xp A B u. Xp A C) -> (p e. Xp A (B u. C) <-> p e. Xp A B u. Xp A C) |
4 |
|
bitr4 |
(fst p e. A /\ snd p e. B u. C <-> fst p e. A /\ (snd p e. B \/ snd p e. C)) ->
(p e. Xp A B u. Xp A C <-> fst p e. A /\ (snd p e. B \/ snd p e. C)) ->
(fst p e. A /\ snd p e. B u. C <-> p e. Xp A B u. Xp A C) |
5 |
|
elun |
snd p e. B u. C <-> snd p e. B \/ snd p e. C |
6 |
5 |
aneq2i |
fst p e. A /\ snd p e. B u. C <-> fst p e. A /\ (snd p e. B \/ snd p e. C) |
7 |
4, 6 |
ax_mp |
(p e. Xp A B u. Xp A C <-> fst p e. A /\ (snd p e. B \/ snd p e. C)) -> (fst p e. A /\ snd p e. B u. C <-> p e. Xp A B u. Xp A C) |
8 |
|
bitr |
(p e. Xp A B u. Xp A C <-> p e. Xp A B \/ p e. Xp A C) ->
(p e. Xp A B \/ p e. Xp A C <-> fst p e. A /\ (snd p e. B \/ snd p e. C)) ->
(p e. Xp A B u. Xp A C <-> fst p e. A /\ (snd p e. B \/ snd p e. C)) |
9 |
|
elun |
p e. Xp A B u. Xp A C <-> p e. Xp A B \/ p e. Xp A C |
10 |
8, 9 |
ax_mp |
(p e. Xp A B \/ p e. Xp A C <-> fst p e. A /\ (snd p e. B \/ snd p e. C)) -> (p e. Xp A B u. Xp A C <-> fst p e. A /\ (snd p e. B \/ snd p e. C)) |
11 |
|
bitr4 |
(p e. Xp A B \/ p e. Xp A C <-> fst p e. A /\ snd p e. B \/ fst p e. A /\ snd p e. C) ->
(fst p e. A /\ (snd p e. B \/ snd p e. C) <-> fst p e. A /\ snd p e. B \/ fst p e. A /\ snd p e. C) ->
(p e. Xp A B \/ p e. Xp A C <-> fst p e. A /\ (snd p e. B \/ snd p e. C)) |
12 |
|
oreq |
(p e. Xp A B <-> fst p e. A /\ snd p e. B) ->
(p e. Xp A C <-> fst p e. A /\ snd p e. C) ->
(p e. Xp A B \/ p e. Xp A C <-> fst p e. A /\ snd p e. B \/ fst p e. A /\ snd p e. C) |
13 |
|
elxp |
p e. Xp A B <-> fst p e. A /\ snd p e. B |
14 |
12, 13 |
ax_mp |
(p e. Xp A C <-> fst p e. A /\ snd p e. C) -> (p e. Xp A B \/ p e. Xp A C <-> fst p e. A /\ snd p e. B \/ fst p e. A /\ snd p e. C) |
15 |
|
elxp |
p e. Xp A C <-> fst p e. A /\ snd p e. C |
16 |
14, 15 |
ax_mp |
p e. Xp A B \/ p e. Xp A C <-> fst p e. A /\ snd p e. B \/ fst p e. A /\ snd p e. C |
17 |
11, 16 |
ax_mp |
(fst p e. A /\ (snd p e. B \/ snd p e. C) <-> fst p e. A /\ snd p e. B \/ fst p e. A /\ snd p e. C) ->
(p e. Xp A B \/ p e. Xp A C <-> fst p e. A /\ (snd p e. B \/ snd p e. C)) |
18 |
|
andi |
fst p e. A /\ (snd p e. B \/ snd p e. C) <-> fst p e. A /\ snd p e. B \/ fst p e. A /\ snd p e. C |
19 |
17, 18 |
ax_mp |
p e. Xp A B \/ p e. Xp A C <-> fst p e. A /\ (snd p e. B \/ snd p e. C) |
20 |
10, 19 |
ax_mp |
p e. Xp A B u. Xp A C <-> fst p e. A /\ (snd p e. B \/ snd p e. C) |
21 |
7, 20 |
ax_mp |
fst p e. A /\ snd p e. B u. C <-> p e. Xp A B u. Xp A C |
22 |
3, 21 |
ax_mp |
p e. Xp A (B u. C) <-> p e. Xp A B u. Xp A C |
23 |
22 |
eqri |
Xp A (B u. C) == Xp A B u. Xp A C |