Skip to content
GitLab
Projects
Groups
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
Rice Wine
Iris
Commits
2bc4df02
Commit
2bc4df02
authored
Jul 01, 2016
by
Robbert Krebbers
Browse files
Use ndot_ne_disjoint more eager so it expands definitions.
parent
13117f43
Changes
2
Hide whitespace changes
Inline
Side-by-side
prelude/tactics.v
View file @
2bc4df02
...
...
@@ -412,10 +412,11 @@ Tactic Notation "feed" "destruct" constr(H) "as" simple_intropattern(IP) :=
It will search for the first subterm of the goal matching [pat], and then call [tac]
with that subterm. *)
Ltac
find_pat
pat
tac
:
=
match
goal
with
|-
context
[
?x
]
=>
unify
pat
x
with
typeclass_instances
;
tryif
tac
x
then
idtac
else
fail
2
end
.
match
goal
with
|-
context
[
?x
]
=>
unify
pat
x
with
typeclass_instances
;
tryif
tac
x
then
idtac
else
fail
2
end
.
(** Coq's [firstorder] tactic fails or loops on rather small goals already. In
particular, on those generated by the tactic [unfold_elem_ofs] which is used
...
...
program_logic/namespaces.v
View file @
2bc4df02
...
...
@@ -64,7 +64,7 @@ End ndisjoint.
(* The hope is that registering these will suffice to solve most goals
of the form [N1 ⊥ N2] and those of the form [((N1 ⊆ E ∖ N2) ∖ ..) ∖ Nn]. *)
Hint
Resolve
ndisj_subseteq_difference
:
ndisj
.
Hint
Extern
0
(
_
.@
_
⊥
_
.@
_
)
=>
apply
ndot_ne_disjoint
;
congruence
:
ndisj
.
Hint
Extern
0
(
_
⊥
_
)
=>
apply
ndot_ne_disjoint
;
congruence
:
ndisj
.
Hint
Resolve
ndot_preserve_disjoint_l
:
ndisj
.
Hint
Resolve
ndot_preserve_disjoint_r
:
ndisj
.
...
...
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment