HINT_EXISTS_TAC : tactic
b = 0, a < 1, c > 0 ?- ?x. x < 1
b = 0, a < 1, c > 0 ?- a < 1
- However the tactic also allows to make progress if only one conjunct of the existential is satisfied. For instance, the goal:
b = 0, a < 1, c > 0 ?- ?x. x < 1 /\ x + x = c
b = 0, a < 1, c > 0 ?- a < 1 /\ a + a = c
- The location of the conjunct does not matter, the goal:
b = 0, a < 1, c > 0 ?- ?x. x + x = c /\ x < 1
b = 0, a < 1, c > 0 ?- a + a = c /\ a < 1
- It can be convenient to chain the call to HINT_EXISTS_TAC with one to ASM_REWRITE_TAC in order to remove automatically the satisfied conjunct:
b = 0, a < 1, c > 0 ?- ?x. x + x = c /\ x < 1
b = 0, a < 1, c > 0 ?- a + a = c