Theorem xpundir | index | src |

theorem xpundir (A B C: set): $ Xp A (B u. C) == Xp A B u. Xp A C $;
StepHypRefExpression
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

Axiom use

axs_prop_calc (ax_1, ax_2, ax_3, ax_mp, itru), axs_pred_calc (ax_gen, ax_4, ax_5, ax_6, ax_7, ax_10, ax_11, ax_12), axs_set (elab, ax_8), axs_the (theid, the0), axs_peano (peano1, peano2, peano5, addeq, muleq, add0, addS, mul0, mulS)