Definition lognat(n : nat) : (n <> 0) -> nat := 
  fun pf => (log2 (nat_to_pos pf)).

Theorem lognat_prod_sum : forall(a : nat)(pf1 : (a <> 0))(pf2: (2 * a) <> 0), (S (lognat pf1)) = (lognat pf2).