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
Iris
Fairis
Commits
7a070280
Commit
7a070280
authored
Feb 08, 2016
by
Robbert Krebbers
Browse files
Params instances for iprod.
parent
99246080
Changes
1
Hide whitespace changes
Inline
Side-by-side
algebra/iprod.v
View file @
7a070280
...
...
@@ -4,7 +4,7 @@ Require Import algebra.functor.
(
**
*
Indexed
product
*
)
(
**
Need
to
put
this
in
a
definition
to
make
canonical
structures
to
work
.
*
)
Definition
iprod
{
A
}
(
B
:
A
→
cofeT
)
:=
∀
x
,
B
x
.
Definition
iprod_insert
`
{
∀
x
x
'
:
A
,
Decision
(
x
=
x
'
)
}
{
B
:
A
→
cofeT
}
Definition
iprod_insert
{
A
}
{
B
:
A
→
cofeT
}
`
{
∀
x
x
'
:
A
,
Decision
(
x
=
x
'
)
}
(
x
:
A
)
(
y
:
B
x
)
(
f
:
iprod
B
)
:
iprod
B
:=
λ
x
'
,
match
decide
(
x
=
x
'
)
with
left
H
=>
eq_rect
_
B
y
_
H
|
right
_
=>
f
x
'
end
.
Global
Instance
iprod_empty
{
A
}
{
B
:
A
→
cofeT
}
...
...
@@ -12,6 +12,8 @@ Global Instance iprod_empty {A} {B : A → cofeT}
Definition
iprod_singleton
{
A
}
{
B
:
A
→
cofeT
}
`
{
∀
x
x
'
:
A
,
Decision
(
x
=
x
'
),
∀
x
:
A
,
Empty
(
B
x
)
}
(
x
:
A
)
(
y
:
B
x
)
:
iprod
B
:=
iprod_insert
x
y
∅
.
Instance:
Params
(
@
iprod_insert
)
4.
Instance:
Params
(
@
iprod_singleton
)
5.
Section
iprod_cofe
.
Context
{
A
}
{
B
:
A
→
cofeT
}
.
...
...
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