Skip to content
GitLab
Menu
Projects
Groups
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
Simon Spies
stdpp
Commits
84fa254a
Commit
84fa254a
authored
Oct 09, 2017
by
Ralf Jung
Browse files
solve_proper: be sure to run simpl at least once
parent
e67daba3
Changes
1
Hide whitespace changes
Inline
Sidebyside
theories/tactics.v
View file @
84fa254a
...
@@ 333,7 +333,7 @@ Ltac solve_proper_unfold :=
...
@@ 333,7 +333,7 @@ Ltac solve_proper_unfold :=


?R
(
?f
_
_
_
)
(
?f
_
_
_
)
=>
unfold
f


?R
(
?f
_
_
_
)
(
?f
_
_
_
)
=>
unfold
f


?R
(
?f
_
_
)
(
?f
_
_
)
=>
unfold
f


?R
(
?f
_
_
)
(
?f
_
_
)
=>
unfold
f


?R
(
?f
_
)
(
?f
_
)
=>
unfold
f


?R
(
?f
_
)
(
?f
_
)
=>
unfold
f
end
;
simpl
.
end
.
(** The tactic [solve_proper_core tac] solves goals of the form "Proper (R1 ==> R2)", for
(** The tactic [solve_proper_core tac] solves goals of the form "Proper (R1 ==> R2)", for
any number of relations. The actual work is done by repeatedly applying
any number of relations. The actual work is done by repeatedly applying
...
@@ 349,7 +349,7 @@ Ltac solve_proper_core tac :=
...
@@ 349,7 +349,7 @@ Ltac solve_proper_core tac :=
end
;
simplify_eq
;
end
;
simplify_eq
;
(* Now do the job. We try with and without unfolding. We have to backtrack on
(* Now do the job. We try with and without unfolding. We have to backtrack on
that because unfolding may succeed, but then the proof may fail. *)
that because unfolding may succeed, but then the proof may fail. *)
(
solve_proper_unfold
+
idtac
)
;
(
solve_proper_unfold
+
idtac
)
;
simpl
;
solve
[
repeat
first
[
eassumption

tac
()]
].
solve
[
repeat
first
[
eassumption

tac
()]
].
Ltac
solve_proper
:
=
solve_proper_core
ltac
:
(
fun
_
=>
f_equiv
).
Ltac
solve_proper
:
=
solve_proper_core
ltac
:
(
fun
_
=>
f_equiv
).
...
...
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Attach a 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