% this proof is incomplete! proof example : A & B = begin A; % unjustified B; % unjustified A & B; end; % this proof is incomplete! proof example2 : (A & B) & (A & B) = begin A; % unjustified B; % unjustified A & B; (A & B) & (A & B) end; proof dup : A => (A & A) = begin [A; A & A]; A => A & A; end; proof collapse : (A & A) => A = begin [A & A; A]; A & A => A; end; proof distribimpand1 : (A => (B & C)) => (A => B) & (A => C) = begin [A => (B & C); [A; B & C; B]; A => B; [A; B & C; C]; A => C; (A => B) & (A => C)]; (A => (B & C)) => (A => B) & (A => C); end; proof distriborimp1 : ((A | B) => C) => (A => C) & (B => C) = begin [(A | B) => C; [A; A | B; C]; A => C; [B; A | B; C]; B => C; (A => C) & (B => C)]; ((A | B) => C) => (A => C) & (B => C); end;