constructor
case a
n : ℕ
x : ℕ × ℕ
⊢ (∃ a, (a 0 * a 1 = n ∧ ¬n = 0) ∧ (a 0, a 1) = x) ↔ x.1 * x.2 = n ∧ ¬n = 0
case a.mp
n : ℕ
x : ℕ × ℕ
⊢ (∃ a, (a 0 * a 1 = n ∧ ¬n = 0) ∧ (a 0, a 1) = x) → x.1 * x.2 = n ∧ ¬n = 0

case a.mpr
n : ℕ
x : ℕ × ℕ
⊢ x.1 * x.2 = n ∧ ¬n = 0 → ∃ a, (a 0 * a 1 = n ∧ ¬n = 0) ∧ (a 0, a 1) = x