packages feed

MiniAgda-0.2025.7.23: test/succeed/exists.golden

--- opening "exists.ma" ---
--- scope checking ---
--- type checking ---
type  Sigma : ^(A : Set) -> ^(B : A -> Set) -> Set
term  Sigma.pair : .[A : Set] -> .[B : A -> Set] -> ^(fst : A) -> ^(snd : B fst) -> < Sigma.pair fst snd : Sigma A B >
term  fst : .[A : Set] -> .[B : A -> Set] -> (pair : Sigma A B) -> A
{ fst [A] [B] (Sigma.pair #fst #snd) = #fst
}
term  snd : .[A : Set] -> .[B : A -> Set] -> (pair : Sigma A B) -> B (fst [A] [B] pair)
{ snd [A] [B] (Sigma.pair #fst #snd) = #snd
}
type  Subset : ^(A : Set) -> ^(B : A -> Set) -> Set
term  Subset.put : .[A : Set] -> .[B : A -> Set] -> ^(get : A) -> .[prf : B get] -> < Subset.put get prf : Subset A B >
type  Exists : ^(A : Set) -> ^(B : A -> Set) -> Set
term  Exists.exI : .[A : Set] -> .[B : A -> Set] -> .[a : A] -> ^(prop : B a) -> < Exists.exI a prop : Exists A B >
term  exE : .[A : Set] -> .[B : A -> Set] -> .[C : Set] -> Exists A B -> (.[a : A] -> B a -> C) -> C
{ exE [A] [B] [C] (Exists.exI [a] b) k = k [a] b
}
type  Bracket : ^(A : Set) -> Set
term  Bracket.bI : .[A : Set] -> .[a : A] -> < Bracket.bI a : Bracket A >
term  bE : .[A : Set] -> .[C : Set] -> Bracket A -> (.[A] -> C) -> C
{ bE [A] [C] (Bracket.bI [a]) k = k [a]
}
--- evaluating ---
--- closing "exists.ma" ---