aboutsummaryrefslogtreecommitdiff
path: root/test-suite/bugs/closed/bug_9512.v
blob: 25285622a9c6053ac7b89d8d2a822ea356eb5636 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
Require Import Coq.ZArith.BinInt Coq.omega.Omega Coq.micromega.Lia.

Set Primitive Projections.
Record params := { width : Z }.
Definition p : params := Build_params 64.

Set Printing All.

Goal width p = 0%Z -> width p = 0%Z.
  intros.

  assert_succeeds (enough True; [omega|]).
  assert_succeeds (enough True; [lia|]).

(*   H : @eq Z (width p) Z0 *)
(*   ============================ *)
(*   @eq Z (width p) Z0 *)

  change tt with tt in H.

(*   H : @eq Z (width p) Z0 *)
(*   ============================ *)
(*   @eq Z (width p) Z0 *)

  assert_succeeds (enough True; [lia|]).
  (* Tactic failure: <tactic closure> fails. *)
  (* assert_succeeds (enough True; [omega|]). *)
  (* Tactic failure: <tactic closure> fails. *)

  (* omega. *)
  (* Error: Omega can't solve this system *)

  lia.
  (* Tactic failure:  Cannot find witness. *)
Qed.