proposition: Lemma foo: forall x y z:nat, x = y -> forall a b t : nat, a+1 = t+2 -> b + 5 = t - 7 -> (forall u v, v+1 = 1 -> u+1 = 1 -> a+1 = z+2) -> z = b + x-> True.
proof: Proof. intros. Undo. intros ; { autorename }. Undo. intros /n. Undo. intros ; { substHyp }; { autorename}; {move_up_types}. Undo. intros /s/n/g. Undo. intros /s/n/g. Undo 2. intros until 1. destruct x eqn:heq;intros /sng. - apply I. - apply I. Qed.
imports: Arith ZArith LibHyps.LibHyps List