remove IsOne stuff; add timesSubj
This commit is contained in:
parent
28055c0f39
commit
82795e9976
2 changed files with 9 additions and 11 deletions
|
@ -30,12 +30,6 @@ interface Eq q => IsQty q where
|
|||
isZero : Dec1 IsZero
|
||||
zeroIsZero : IsZero zero
|
||||
|
||||
||| true if bindings of this quantity must be linear
|
||||
-- [fixme] is this needed for anything?
|
||||
IsOne : Pred q
|
||||
isOne : Dec1 IsOne
|
||||
oneIsOne : IsOne one
|
||||
|
||||
||| ``p `Compat` q`` if it is ok for a binding of
|
||||
||| quantity `q` to be used exactly `p` times.
|
||||
||| e.g. ``1 `Compat` 1``, ``1 `Compat` ω``
|
||||
|
@ -49,6 +43,7 @@ interface Eq q => IsQty q where
|
|||
isSubj : Dec1 IsSubj
|
||||
zeroIsSubj : IsSubj zero
|
||||
oneIsSubj : IsSubj one
|
||||
timesSubj : forall pi, rh. IsSubj pi -> IsSubj rh -> IsSubj (pi * rh)
|
||||
|
||||
||| true if it is ok for a global definition to have this
|
||||
||| quantity. so not exact usage counts, maybe.
|
||||
|
@ -75,4 +70,3 @@ GQty q = Subset q IsGlobal
|
|||
public export %inline
|
||||
gzero : IsQty q => GQty q
|
||||
gzero = Element zero zeroIsGlobal
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue