| 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 |