remove stdlib duplication
This commit is contained in:
parent
5c3f2510fe
commit
8582862914
2 changed files with 10 additions and 11 deletions
|
@ -9,14 +9,3 @@ Scope = SnocList
|
||||||
public export
|
public export
|
||||||
Scoped : Type -> Type
|
Scoped : Type -> Type
|
||||||
Scoped a = Scope a -> Type
|
Scoped a = Scope a -> Type
|
||||||
|
|
||||||
public export
|
|
||||||
data All : (a -> Type) -> Scoped a where
|
|
||||||
Lin : All p [<]
|
|
||||||
(:<) : All p xs -> p x -> All p (xs :< x)
|
|
||||||
%name OPE.Basics.All ps, qs
|
|
||||||
|
|
||||||
public export
|
|
||||||
mapAll : (forall x. p x -> q x) -> All p xs -> All q xs
|
|
||||||
mapAll f [<] = [<]
|
|
||||||
mapAll f (x :< y) = mapAll f x :< f y
|
|
||||||
|
|
|
@ -5,6 +5,7 @@ import Quox.OPE.Length
|
||||||
import Quox.NatExtra
|
import Quox.NatExtra
|
||||||
import Data.DPair
|
import Data.DPair
|
||||||
import Data.SnocList.Elem
|
import Data.SnocList.Elem
|
||||||
|
import Data.SnocList.Quantifiers
|
||||||
|
|
||||||
%default total
|
%default total
|
||||||
|
|
||||||
|
@ -99,12 +100,21 @@ export
|
||||||
appZeroRight {len = Z} p = Refl
|
appZeroRight {len = Z} p = Refl
|
||||||
|
|
||||||
|
|
||||||
|
||| if `p` holds for all elements of the main list,
|
||||||
|
||| it holds for all elements of the sublist
|
||||||
public export
|
public export
|
||||||
subAll : xs `Sub` ys -> All p ys -> All p xs
|
subAll : xs `Sub` ys -> All p ys -> All p xs
|
||||||
subAll End [<] = [<]
|
subAll End [<] = [<]
|
||||||
subAll (Keep q) (ps :< x) = subAll q ps :< x
|
subAll (Keep q) (ps :< x) = subAll q ps :< x
|
||||||
subAll (Drop q) (ps :< x) = subAll q ps
|
subAll (Drop q) (ps :< x) = subAll q ps
|
||||||
|
|
||||||
|
||| if `p` holds for one element of the sublist,
|
||||||
|
||| it holds for one element of the main list
|
||||||
|
public export
|
||||||
|
subAny : xs `Sub` ys -> Any p xs -> Any p ys
|
||||||
|
subAny (Keep q) (Here x) = Here x
|
||||||
|
subAny (Keep q) (There x) = There (subAny q x)
|
||||||
|
subAny (Drop q) x = There (subAny q x)
|
||||||
|
|
||||||
|
|
||||||
public export
|
public export
|
||||||
|
|
Loading…
Reference in a new issue