summaryrefslogtreecommitdiff
path: root/test-suite/success/autorewritein.v
blob: 8126e9e4bab5d3f4fb19d8506346eeba6ab66114 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
Variable Ack : nat -> nat -> nat.

Axiom Ack0 : forall m : nat, Ack 0 m = S m.
Axiom Ack1 : forall n : nat, Ack (S n) 0 = Ack n 1.
Axiom Ack2 : forall n m : nat, Ack (S n) (S m) = Ack n (Ack (S n) m).

Hint Rewrite Ack0 Ack1 Ack2 : base0.

Lemma ResAck0 : (Ack 2 2 = 7 -> False) -> False.
Proof.
  intros.
  autorewrite with base0 in H using try (apply H; reflexivity).
Qed.

Lemma ResAck1 : forall H:(Ack 2 2 = 7 -> False), H=H -> False.
Proof.
  intros.
  autorewrite with base0 in H using try (apply H1; reflexivity).
Qed.