Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
What's new
7
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Open sidebar
David Swasey
coq-stdpp
Commits
a97de42f
Commit
a97de42f
authored
Jun 21, 2012
by
Robbert Krebbers
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Improve correspondence proof axiomatic <-> small step semantics.
parent
58c3a75f
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
12 additions
and
0 deletions
+12
-0
theories/base.v
theories/base.v
+12
-0
No files found.
theories/base.v
View file @
a97de42f
...
...
@@ -122,6 +122,18 @@ Arguments left_id {_ _} _ _ {_} _.
Arguments
right_id
{
_
_
}
_
_
{
_
}
_
.
Arguments
associative
{
_
_
}
_
{
_
}
_
_
_
.
(* Using idempotent_eq we can force Coq to not use the setoid mechanism *)
Lemma
idempotent_eq
{
A
}
(
f
:
A
→
A
→
A
)
`
{!
Idempotent
(=)
f
}
x
:
f
x
x
=
x
.
Proof
.
auto
.
Qed
.
Lemma
commutative_eq
{
A
B
}
(
f
:
B
→
B
→
A
)
`
{!
Commutative
(=)
f
}
x
y
:
f
x
y
=
f
y
x
.
Proof
.
auto
.
Qed
.
Lemma
left_id_eq
{
A
}
(
i
:
A
)
(
f
:
A
→
A
→
A
)
`
{!
LeftId
(=)
i
f
}
x
:
f
i
x
=
x
.
Proof
.
auto
.
Qed
.
Lemma
right_id_eq
{
A
}
(
i
:
A
)
(
f
:
A
→
A
→
A
)
`
{!
RightId
(=)
i
f
}
x
:
f
x
i
=
x
.
Proof
.
auto
.
Qed
.
Lemma
associative_eq
{
A
}
(
f
:
A
→
A
→
A
)
`
{!
Associative
(=)
f
}
x
y
z
:
f
x
(
f
y
z
)
=
f
(
f
x
y
)
z
.
Proof
.
auto
.
Qed
.
(* Monadic operations *)
Section
monad_ops
.
Context
(
M
:
Type
→
Type
).
...
...
Write
Preview
Markdown
is supported
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