%% 6 points proof implOr : (A | C) & (B => C) => (A => B) => C annotated proof implOr : (A | C) & (B => C) => (A => B) => C term implOr : (A | C) & (B => C) => (A => B) => C %% 8 points proof curry : (A & B => C) => (A => B => C) proof qcurry : ((?x:t. B(x)) => C) => (!x:t. B(x) => C) term curry : (A & B => C) => (A => B => C) term qcurry : ((?x:t. B(x)) => C) => (!x:t. B(x) => C) %% 5 points proof compose : (!x:t. A(x) => B(x)) => (!x:t. B(x) => C(x)) => !x:t. A(x) => C(x) term compose : (!x:t. A(x) => B(x)) => (!x:t. B(x) => C(x)) => !x:t. A(x) => C(x) %% 6 points proof distribAllAnd : (!x:t. A(x) & B(x)) <=> (!x:t. A(x)) & (!x:t. B(x)) proof distribExAnd1 : (?x:t. A(x) & B(x)) => (?x:t. A(x)) & (?x:t. B(x))