hydra-kernel-0.18.0: src/main/haskell/Hydra/Core/Lib/Defaults.hs
-- Note: this is an automatically generated file. Do not edit.
-- | A module which provides a single map from primitive names to their default, cross-compilable reference implementations, for primitives which declare one.
module Hydra.Core.Lib.Defaults where
import qualified Hydra.Core.Model as Model
import Prelude hiding (Enum, Ordering, decodeFloat, encodeFloat, fail, lines, map, pure, sum, unlines)
import qualified Data.Scientific as Sci
import Data.Void
import qualified Data.Map as M
-- | A map from primitive name to default (cross-compilable) reference implementation, for primitives which declare one. Each value is an encoded (reified) term; decode it to recover the executable implementation.
defaultImplementations :: M.Map Model.Name Model.Term
defaultImplementations =
M.fromList [
(
Model.Name "hydra.core.lib.eithers.apply",
(Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "ef"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "ex"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.eithers.bind")),
Model.applicationArgument = (Model.TermVariable (Model.Name "ef"))})),
Model.applicationArgument = (Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "f"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.eithers.map")),
Model.applicationArgument = (Model.TermVariable (Model.Name "f"))})),
Model.applicationArgument = (Model.TermVariable (Model.Name "ex"))}))}))}))}))}))),
(
Model.Name "hydra.core.lib.eithers.bimap",
(Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "f"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "g"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "e"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.eithers.either")),
Model.applicationArgument = (Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "x"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermEither (Left (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "f")),
Model.applicationArgument = (Model.TermVariable (Model.Name "x"))}))))}))})),
Model.applicationArgument = (Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "y"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermEither (Right (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "g")),
Model.applicationArgument = (Model.TermVariable (Model.Name "y"))}))))}))})),
Model.applicationArgument = (Model.TermVariable (Model.Name "e"))}))}))}))}))),
(
Model.Name "hydra.core.lib.eithers.bind",
(Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "e"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "f"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.eithers.either")),
Model.applicationArgument = (Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "x"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermEither (Left (Model.TermVariable (Model.Name "x"))))}))})),
Model.applicationArgument = (Model.TermVariable (Model.Name "f"))})),
Model.applicationArgument = (Model.TermVariable (Model.Name "e"))}))}))}))),
(
Model.Name "hydra.core.lib.eithers.compose",
(Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "f"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "g"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "x"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.eithers.bind")),
Model.applicationArgument = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "f")),
Model.applicationArgument = (Model.TermVariable (Model.Name "x"))}))})),
Model.applicationArgument = (Model.TermVariable (Model.Name "g"))}))}))}))}))),
(
Model.Name "hydra.core.lib.eithers.foldList",
(Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "f"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "acc0"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "xs"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.lists.foldl")),
Model.applicationArgument = (Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "acc"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "el"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.eithers.bind")),
Model.applicationArgument = (Model.TermVariable (Model.Name "acc"))})),
Model.applicationArgument = (Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "a"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "f")),
Model.applicationArgument = (Model.TermVariable (Model.Name "a"))})),
Model.applicationArgument = (Model.TermVariable (Model.Name "el"))}))}))}))}))}))})),
Model.applicationArgument = (Model.TermEither (Right (Model.TermVariable (Model.Name "acc0"))))})),
Model.applicationArgument = (Model.TermVariable (Model.Name "xs"))}))}))}))}))),
(
Model.Name "hydra.core.lib.eithers.isLeft",
(Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "e"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.eithers.either")),
Model.applicationArgument = (Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "_"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermLiteral (Model.LiteralBoolean True))}))})),
Model.applicationArgument = (Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "_"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermLiteral (Model.LiteralBoolean False))}))})),
Model.applicationArgument = (Model.TermVariable (Model.Name "e"))}))}))),
(
Model.Name "hydra.core.lib.eithers.isRight",
(Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "e"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.eithers.either")),
Model.applicationArgument = (Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "_"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermLiteral (Model.LiteralBoolean False))}))})),
Model.applicationArgument = (Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "_"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermLiteral (Model.LiteralBoolean True))}))})),
Model.applicationArgument = (Model.TermVariable (Model.Name "e"))}))}))),
(
Model.Name "hydra.core.lib.eithers.lefts",
(Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "xs"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.lists.foldr")),
Model.applicationArgument = (Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "e"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "acc"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.eithers.either")),
Model.applicationArgument = (Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "l"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.lists.cons")),
Model.applicationArgument = (Model.TermVariable (Model.Name "l"))})),
Model.applicationArgument = (Model.TermVariable (Model.Name "acc"))}))}))})),
Model.applicationArgument = (Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "_"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermVariable (Model.Name "acc"))}))})),
Model.applicationArgument = (Model.TermVariable (Model.Name "e"))}))}))}))})),
Model.applicationArgument = (Model.TermList [])})),
Model.applicationArgument = (Model.TermVariable (Model.Name "xs"))}))}))),
(
Model.Name "hydra.core.lib.eithers.map",
(Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "f"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "e"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.eithers.either")),
Model.applicationArgument = (Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "x"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermEither (Left (Model.TermVariable (Model.Name "x"))))}))})),
Model.applicationArgument = (Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "y"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermEither (Right (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "f")),
Model.applicationArgument = (Model.TermVariable (Model.Name "y"))}))))}))})),
Model.applicationArgument = (Model.TermVariable (Model.Name "e"))}))}))}))),
(
Model.Name "hydra.core.lib.eithers.mapList",
(Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "f"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "xs"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.lists.foldr")),
Model.applicationArgument = (Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "x"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "acc"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.eithers.bind")),
Model.applicationArgument = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "f")),
Model.applicationArgument = (Model.TermVariable (Model.Name "x"))}))})),
Model.applicationArgument = (Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "y"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.eithers.map")),
Model.applicationArgument = (Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "ys"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.lists.cons")),
Model.applicationArgument = (Model.TermVariable (Model.Name "y"))})),
Model.applicationArgument = (Model.TermVariable (Model.Name "ys"))}))}))})),
Model.applicationArgument = (Model.TermVariable (Model.Name "acc"))}))}))}))}))}))})),
Model.applicationArgument = (Model.TermEither (Right (Model.TermList [])))})),
Model.applicationArgument = (Model.TermVariable (Model.Name "xs"))}))}))}))),
(
Model.Name "hydra.core.lib.eithers.mapOptional",
(Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "f"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "m"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.optionals.match")),
Model.applicationArgument = (Model.TermVariable (Model.Name "m"))})),
Model.applicationArgument = (Model.TermEither (Right (Model.TermOptional Nothing)))})),
Model.applicationArgument = (Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "x"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.eithers.map")),
Model.applicationArgument = (Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "y"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermOptional (Just (Model.TermVariable (Model.Name "y"))))}))})),
Model.applicationArgument = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "f")),
Model.applicationArgument = (Model.TermVariable (Model.Name "x"))}))}))}))}))}))}))),
(
Model.Name "hydra.core.lib.eithers.mapSet",
(Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "f"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "s"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.eithers.map")),
Model.applicationArgument = (Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "ys"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.sets.fromList")),
Model.applicationArgument = (Model.TermVariable (Model.Name "ys"))}))}))})),
Model.applicationArgument = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.lists.foldr")),
Model.applicationArgument = (Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "x"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "acc"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.eithers.bind")),
Model.applicationArgument = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "f")),
Model.applicationArgument = (Model.TermVariable (Model.Name "x"))}))})),
Model.applicationArgument = (Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "y"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.eithers.map")),
Model.applicationArgument = (Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "ys"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.lists.cons")),
Model.applicationArgument = (Model.TermVariable (Model.Name "y"))})),
Model.applicationArgument = (Model.TermVariable (Model.Name "ys"))}))}))})),
Model.applicationArgument = (Model.TermVariable (Model.Name "acc"))}))}))}))}))}))})),
Model.applicationArgument = (Model.TermEither (Right (Model.TermList [])))})),
Model.applicationArgument = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.sets.toList")),
Model.applicationArgument = (Model.TermVariable (Model.Name "s"))}))}))}))}))}))),
(
Model.Name "hydra.core.lib.eithers.partition",
(Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "xs"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.lists.foldr")),
Model.applicationArgument = (Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "e"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "acc"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.eithers.either")),
Model.applicationArgument = (Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "l"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermPair (
Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.lists.cons")),
Model.applicationArgument = (Model.TermVariable (Model.Name "l"))})),
Model.applicationArgument = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.pairs.first")),
Model.applicationArgument = (Model.TermVariable (Model.Name "acc"))}))}),
(Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.pairs.second")),
Model.applicationArgument = (Model.TermVariable (Model.Name "acc"))}))))}))})),
Model.applicationArgument = (Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "r"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermPair (
Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.pairs.first")),
Model.applicationArgument = (Model.TermVariable (Model.Name "acc"))}),
(Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.lists.cons")),
Model.applicationArgument = (Model.TermVariable (Model.Name "r"))})),
Model.applicationArgument = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.pairs.second")),
Model.applicationArgument = (Model.TermVariable (Model.Name "acc"))}))}))))}))})),
Model.applicationArgument = (Model.TermVariable (Model.Name "e"))}))}))}))})),
Model.applicationArgument = (Model.TermPair (Model.TermList [], (Model.TermList [])))})),
Model.applicationArgument = (Model.TermVariable (Model.Name "xs"))}))}))),
(
Model.Name "hydra.core.lib.eithers.rights",
(Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "xs"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.lists.foldr")),
Model.applicationArgument = (Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "e"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "acc"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.eithers.either")),
Model.applicationArgument = (Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "_"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermVariable (Model.Name "acc"))}))})),
Model.applicationArgument = (Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "r"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.lists.cons")),
Model.applicationArgument = (Model.TermVariable (Model.Name "r"))})),
Model.applicationArgument = (Model.TermVariable (Model.Name "acc"))}))}))})),
Model.applicationArgument = (Model.TermVariable (Model.Name "e"))}))}))}))})),
Model.applicationArgument = (Model.TermList [])})),
Model.applicationArgument = (Model.TermVariable (Model.Name "xs"))}))}))),
(
Model.Name "hydra.core.lib.equality.notEqual",
(Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "x"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "y"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.logic.not")),
Model.applicationArgument = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.equality.equal")),
Model.applicationArgument = (Model.TermVariable (Model.Name "x"))})),
Model.applicationArgument = (Model.TermVariable (Model.Name "y"))}))}))}))}))),
(
Model.Name "hydra.core.lib.functions.compose",
(Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "g"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "f"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "x"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "g")),
Model.applicationArgument = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "f")),
Model.applicationArgument = (Model.TermVariable (Model.Name "x"))}))}))}))}))}))),
(
Model.Name "hydra.core.lib.functions.const",
(Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "x"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "y"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermVariable (Model.Name "x"))}))}))),
(
Model.Name "hydra.core.lib.functions.flip",
(Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "f"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "x"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "y"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "f")),
Model.applicationArgument = (Model.TermVariable (Model.Name "y"))})),
Model.applicationArgument = (Model.TermVariable (Model.Name "x"))}))}))}))}))),
(
Model.Name "hydra.core.lib.functions.identity",
(Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "x"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermVariable (Model.Name "x"))}))),
(
Model.Name "hydra.core.lib.lists.bind",
(Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "xs"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "f"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.lists.foldr")),
Model.applicationArgument = (Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "x"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "acc"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.lists.concat2")),
Model.applicationArgument = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "f")),
Model.applicationArgument = (Model.TermVariable (Model.Name "x"))}))})),
Model.applicationArgument = (Model.TermVariable (Model.Name "acc"))}))}))}))})),
Model.applicationArgument = (Model.TermList [])})),
Model.applicationArgument = (Model.TermVariable (Model.Name "xs"))}))}))}))),
(
Model.Name "hydra.core.lib.lists.dropWhile",
(Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "p"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "xs"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.pairs.second")),
Model.applicationArgument = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.lists.span")),
Model.applicationArgument = (Model.TermVariable (Model.Name "p"))})),
Model.applicationArgument = (Model.TermVariable (Model.Name "xs"))}))}))}))}))),
(
Model.Name "hydra.core.lib.lists.filter",
(Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "p"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "xs"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.lists.foldr")),
Model.applicationArgument = (Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "x"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "acc"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.logic.ifElse")),
Model.applicationArgument = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "p")),
Model.applicationArgument = (Model.TermVariable (Model.Name "x"))}))})),
Model.applicationArgument = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.lists.cons")),
Model.applicationArgument = (Model.TermVariable (Model.Name "x"))})),
Model.applicationArgument = (Model.TermVariable (Model.Name "acc"))}))})),
Model.applicationArgument = (Model.TermVariable (Model.Name "acc"))}))}))}))})),
Model.applicationArgument = (Model.TermList [])})),
Model.applicationArgument = (Model.TermVariable (Model.Name "xs"))}))}))}))),
(
Model.Name "hydra.core.lib.lists.find",
(Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "p"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "xs"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.lists.foldr")),
Model.applicationArgument = (Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "x"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "acc"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.logic.ifElse")),
Model.applicationArgument = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "p")),
Model.applicationArgument = (Model.TermVariable (Model.Name "x"))}))})),
Model.applicationArgument = (Model.TermOptional (Just (Model.TermVariable (Model.Name "x"))))})),
Model.applicationArgument = (Model.TermVariable (Model.Name "acc"))}))}))}))})),
Model.applicationArgument = (Model.TermOptional Nothing)})),
Model.applicationArgument = (Model.TermVariable (Model.Name "xs"))}))}))}))),
(
Model.Name "hydra.core.lib.lists.partition",
(Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "p"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "xs"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.lists.foldr")),
Model.applicationArgument = (Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "x"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "acc"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.logic.ifElse")),
Model.applicationArgument = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "p")),
Model.applicationArgument = (Model.TermVariable (Model.Name "x"))}))})),
Model.applicationArgument = (Model.TermPair (
Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.lists.cons")),
Model.applicationArgument = (Model.TermVariable (Model.Name "x"))})),
Model.applicationArgument = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.pairs.first")),
Model.applicationArgument = (Model.TermVariable (Model.Name "acc"))}))}),
(Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.pairs.second")),
Model.applicationArgument = (Model.TermVariable (Model.Name "acc"))}))))})),
Model.applicationArgument = (Model.TermPair (
Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.pairs.first")),
Model.applicationArgument = (Model.TermVariable (Model.Name "acc"))}),
(Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.lists.cons")),
Model.applicationArgument = (Model.TermVariable (Model.Name "x"))})),
Model.applicationArgument = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.pairs.second")),
Model.applicationArgument = (Model.TermVariable (Model.Name "acc"))}))}))))}))}))}))})),
Model.applicationArgument = (Model.TermPair (Model.TermList [], (Model.TermList [])))})),
Model.applicationArgument = (Model.TermVariable (Model.Name "xs"))}))}))}))),
(
Model.Name "hydra.core.lib.lists.span",
(Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "p"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "xs"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.lists.foldl")),
Model.applicationArgument = (Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "acc"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "x"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.logic.ifElse")),
Model.applicationArgument = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.logic.and")),
Model.applicationArgument = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.lists.isEmpty")),
Model.applicationArgument = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.pairs.second")),
Model.applicationArgument = (Model.TermVariable (Model.Name "acc"))}))}))})),
Model.applicationArgument = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "p")),
Model.applicationArgument = (Model.TermVariable (Model.Name "x"))}))}))})),
Model.applicationArgument = (Model.TermPair (
Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.lists.concat2")),
Model.applicationArgument = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.pairs.first")),
Model.applicationArgument = (Model.TermVariable (Model.Name "acc"))}))})),
Model.applicationArgument = (Model.TermList [
Model.TermVariable (Model.Name "x")])}),
(Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.pairs.second")),
Model.applicationArgument = (Model.TermVariable (Model.Name "acc"))}))))})),
Model.applicationArgument = (Model.TermPair (
Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.pairs.first")),
Model.applicationArgument = (Model.TermVariable (Model.Name "acc"))}),
(Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.lists.concat2")),
Model.applicationArgument = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.pairs.second")),
Model.applicationArgument = (Model.TermVariable (Model.Name "acc"))}))})),
Model.applicationArgument = (Model.TermList [
Model.TermVariable (Model.Name "x")])}))))}))}))}))})),
Model.applicationArgument = (Model.TermPair (Model.TermList [], (Model.TermList [])))})),
Model.applicationArgument = (Model.TermVariable (Model.Name "xs"))}))}))}))),
(
Model.Name "hydra.core.lib.lists.takeWhile",
(Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "p"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "xs"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.pairs.first")),
Model.applicationArgument = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.lists.span")),
Model.applicationArgument = (Model.TermVariable (Model.Name "p"))})),
Model.applicationArgument = (Model.TermVariable (Model.Name "xs"))}))}))}))}))),
(
Model.Name "hydra.core.lib.logic.and",
(Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "a"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "b"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.logic.ifElse")),
Model.applicationArgument = (Model.TermVariable (Model.Name "a"))})),
Model.applicationArgument = (Model.TermVariable (Model.Name "b"))})),
Model.applicationArgument = (Model.TermLiteral (Model.LiteralBoolean False))}))}))}))),
(
Model.Name "hydra.core.lib.logic.not",
(Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "a"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.logic.ifElse")),
Model.applicationArgument = (Model.TermVariable (Model.Name "a"))})),
Model.applicationArgument = (Model.TermLiteral (Model.LiteralBoolean False))})),
Model.applicationArgument = (Model.TermLiteral (Model.LiteralBoolean True))}))}))),
(
Model.Name "hydra.core.lib.logic.or",
(Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "a"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "b"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.logic.ifElse")),
Model.applicationArgument = (Model.TermVariable (Model.Name "a"))})),
Model.applicationArgument = (Model.TermLiteral (Model.LiteralBoolean True))})),
Model.applicationArgument = (Model.TermVariable (Model.Name "b"))}))}))}))),
(
Model.Name "hydra.core.lib.maps.alter",
(Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "f"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "k"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "m"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.optionals.match")),
Model.applicationArgument = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "f")),
Model.applicationArgument = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.maps.lookup")),
Model.applicationArgument = (Model.TermVariable (Model.Name "k"))})),
Model.applicationArgument = (Model.TermVariable (Model.Name "m"))}))}))})),
Model.applicationArgument = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.maps.delete")),
Model.applicationArgument = (Model.TermVariable (Model.Name "k"))})),
Model.applicationArgument = (Model.TermVariable (Model.Name "m"))}))})),
Model.applicationArgument = (Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "vNew"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.maps.insert")),
Model.applicationArgument = (Model.TermVariable (Model.Name "k"))})),
Model.applicationArgument = (Model.TermVariable (Model.Name "vNew"))})),
Model.applicationArgument = (Model.TermVariable (Model.Name "m"))}))}))}))}))}))}))),
(
Model.Name "hydra.core.lib.maps.bimap",
(Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "fk"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "fv"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "m"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.maps.fromList")),
Model.applicationArgument = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.lists.map")),
Model.applicationArgument = (Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "p"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermPair (
Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "fk")),
Model.applicationArgument = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.pairs.first")),
Model.applicationArgument = (Model.TermVariable (Model.Name "p"))}))}),
(Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "fv")),
Model.applicationArgument = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.pairs.second")),
Model.applicationArgument = (Model.TermVariable (Model.Name "p"))}))}))))}))})),
Model.applicationArgument = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.maps.toList")),
Model.applicationArgument = (Model.TermVariable (Model.Name "m"))}))}))}))}))}))}))),
(
Model.Name "hydra.core.lib.maps.filter",
(Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "p"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "m"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.maps.fromList")),
Model.applicationArgument = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.lists.filter")),
Model.applicationArgument = (Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "pr"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "p")),
Model.applicationArgument = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.pairs.second")),
Model.applicationArgument = (Model.TermVariable (Model.Name "pr"))}))}))}))})),
Model.applicationArgument = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.maps.toList")),
Model.applicationArgument = (Model.TermVariable (Model.Name "m"))}))}))}))}))}))),
(
Model.Name "hydra.core.lib.maps.filterWithKey",
(Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "p"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "m"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.maps.fromList")),
Model.applicationArgument = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.lists.filter")),
Model.applicationArgument = (Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "pr"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "p")),
Model.applicationArgument = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.pairs.first")),
Model.applicationArgument = (Model.TermVariable (Model.Name "pr"))}))})),
Model.applicationArgument = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.pairs.second")),
Model.applicationArgument = (Model.TermVariable (Model.Name "pr"))}))}))}))})),
Model.applicationArgument = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.maps.toList")),
Model.applicationArgument = (Model.TermVariable (Model.Name "m"))}))}))}))}))}))),
(
Model.Name "hydra.core.lib.maps.findWithDefault",
(Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "def"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "k"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "m"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.optionals.withDefault")),
Model.applicationArgument = (Model.TermVariable (Model.Name "def"))})),
Model.applicationArgument = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.maps.lookup")),
Model.applicationArgument = (Model.TermVariable (Model.Name "k"))})),
Model.applicationArgument = (Model.TermVariable (Model.Name "m"))}))}))}))}))}))),
(
Model.Name "hydra.core.lib.maps.map",
(Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "f"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "m"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.maps.fromList")),
Model.applicationArgument = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.lists.map")),
Model.applicationArgument = (Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "p"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermPair (
Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.pairs.first")),
Model.applicationArgument = (Model.TermVariable (Model.Name "p"))}),
(Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "f")),
Model.applicationArgument = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.pairs.second")),
Model.applicationArgument = (Model.TermVariable (Model.Name "p"))}))}))))}))})),
Model.applicationArgument = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.maps.toList")),
Model.applicationArgument = (Model.TermVariable (Model.Name "m"))}))}))}))}))}))),
(
Model.Name "hydra.core.lib.maps.mapKeys",
(Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "f"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "m"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.maps.fromList")),
Model.applicationArgument = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.lists.map")),
Model.applicationArgument = (Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "p"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermPair (
Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "f")),
Model.applicationArgument = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.pairs.first")),
Model.applicationArgument = (Model.TermVariable (Model.Name "p"))}))}),
(Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.pairs.second")),
Model.applicationArgument = (Model.TermVariable (Model.Name "p"))}))))}))})),
Model.applicationArgument = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.maps.toList")),
Model.applicationArgument = (Model.TermVariable (Model.Name "m"))}))}))}))}))}))),
(
Model.Name "hydra.core.lib.math.odd",
(Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "x"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.logic.not")),
Model.applicationArgument = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.math.even")),
Model.applicationArgument = (Model.TermVariable (Model.Name "x"))}))}))}))),
(
Model.Name "hydra.core.lib.optionals.apply",
(Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "mf"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "mx"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.optionals.bind")),
Model.applicationArgument = (Model.TermVariable (Model.Name "mf"))})),
Model.applicationArgument = (Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "f"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.optionals.map")),
Model.applicationArgument = (Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "x"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "f")),
Model.applicationArgument = (Model.TermVariable (Model.Name "x"))}))}))})),
Model.applicationArgument = (Model.TermVariable (Model.Name "mx"))}))}))}))}))}))),
(
Model.Name "hydra.core.lib.optionals.bind",
(Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "m"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "f"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.optionals.match")),
Model.applicationArgument = (Model.TermVariable (Model.Name "m"))})),
Model.applicationArgument = (Model.TermOptional Nothing)})),
Model.applicationArgument = (Model.TermVariable (Model.Name "f"))}))}))}))),
(
Model.Name "hydra.core.lib.optionals.compose",
(Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "f"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "g"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "x"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.optionals.bind")),
Model.applicationArgument = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "f")),
Model.applicationArgument = (Model.TermVariable (Model.Name "x"))}))})),
Model.applicationArgument = (Model.TermVariable (Model.Name "g"))}))}))}))}))),
(
Model.Name "hydra.core.lib.optionals.foldList",
(Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "f"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "acc"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "xs"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.lists.foldl")),
Model.applicationArgument = (Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "m"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "y"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.optionals.bind")),
Model.applicationArgument = (Model.TermVariable (Model.Name "m"))})),
Model.applicationArgument = (Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "x"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "f")),
Model.applicationArgument = (Model.TermVariable (Model.Name "x"))})),
Model.applicationArgument = (Model.TermVariable (Model.Name "y"))}))}))}))}))}))})),
Model.applicationArgument = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.optionals.given")),
Model.applicationArgument = (Model.TermVariable (Model.Name "acc"))}))})),
Model.applicationArgument = (Model.TermVariable (Model.Name "xs"))}))}))}))}))),
(
Model.Name "hydra.core.lib.optionals.givens",
(Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "xs"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.lists.foldr")),
Model.applicationArgument = (Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "m"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "acc"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.optionals.match")),
Model.applicationArgument = (Model.TermVariable (Model.Name "m"))})),
Model.applicationArgument = (Model.TermVariable (Model.Name "acc"))})),
Model.applicationArgument = (Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "v"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.lists.cons")),
Model.applicationArgument = (Model.TermVariable (Model.Name "v"))})),
Model.applicationArgument = (Model.TermVariable (Model.Name "acc"))}))}))}))}))}))})),
Model.applicationArgument = (Model.TermList [])})),
Model.applicationArgument = (Model.TermVariable (Model.Name "xs"))}))}))),
(
Model.Name "hydra.core.lib.optionals.isGiven",
(Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "m"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.optionals.match")),
Model.applicationArgument = (Model.TermVariable (Model.Name "m"))})),
Model.applicationArgument = (Model.TermLiteral (Model.LiteralBoolean False))})),
Model.applicationArgument = (Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "_"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermLiteral (Model.LiteralBoolean True))}))}))}))),
(
Model.Name "hydra.core.lib.optionals.isNone",
(Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "m"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.optionals.match")),
Model.applicationArgument = (Model.TermVariable (Model.Name "m"))})),
Model.applicationArgument = (Model.TermLiteral (Model.LiteralBoolean True))})),
Model.applicationArgument = (Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "_"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermLiteral (Model.LiteralBoolean False))}))}))}))),
(
Model.Name "hydra.core.lib.optionals.map",
(Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "f"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "m"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.optionals.match")),
Model.applicationArgument = (Model.TermVariable (Model.Name "m"))})),
Model.applicationArgument = (Model.TermOptional Nothing)})),
Model.applicationArgument = (Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "x"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermOptional (Just (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "f")),
Model.applicationArgument = (Model.TermVariable (Model.Name "x"))}))))}))}))}))}))),
(
Model.Name "hydra.core.lib.optionals.mapList",
(Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "f"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "xs"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.lists.foldr")),
Model.applicationArgument = (Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "x"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "acc"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.optionals.bind")),
Model.applicationArgument = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "f")),
Model.applicationArgument = (Model.TermVariable (Model.Name "x"))}))})),
Model.applicationArgument = (Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "y"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.optionals.map")),
Model.applicationArgument = (Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "ys"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.lists.cons")),
Model.applicationArgument = (Model.TermVariable (Model.Name "y"))})),
Model.applicationArgument = (Model.TermVariable (Model.Name "ys"))}))}))})),
Model.applicationArgument = (Model.TermVariable (Model.Name "acc"))}))}))}))}))}))})),
Model.applicationArgument = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.optionals.given")),
Model.applicationArgument = (Model.TermList [])}))})),
Model.applicationArgument = (Model.TermVariable (Model.Name "xs"))}))}))}))),
(
Model.Name "hydra.core.lib.optionals.mapOptional",
(Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "f"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "xs"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.optionals.givens")),
Model.applicationArgument = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.lists.map")),
Model.applicationArgument = (Model.TermVariable (Model.Name "f"))})),
Model.applicationArgument = (Model.TermVariable (Model.Name "xs"))}))}))}))}))),
(
Model.Name "hydra.core.lib.optionals.mapSet",
(Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "f"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "s"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.optionals.map")),
Model.applicationArgument = (Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "ys"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.sets.fromList")),
Model.applicationArgument = (Model.TermVariable (Model.Name "ys"))}))}))})),
Model.applicationArgument = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.lists.foldr")),
Model.applicationArgument = (Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "x"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "acc"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.optionals.bind")),
Model.applicationArgument = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "f")),
Model.applicationArgument = (Model.TermVariable (Model.Name "x"))}))})),
Model.applicationArgument = (Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "y"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.optionals.map")),
Model.applicationArgument = (Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "ys"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.lists.cons")),
Model.applicationArgument = (Model.TermVariable (Model.Name "y"))})),
Model.applicationArgument = (Model.TermVariable (Model.Name "ys"))}))}))})),
Model.applicationArgument = (Model.TermVariable (Model.Name "acc"))}))}))}))}))}))})),
Model.applicationArgument = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.optionals.given")),
Model.applicationArgument = (Model.TermList [])}))})),
Model.applicationArgument = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.sets.toList")),
Model.applicationArgument = (Model.TermVariable (Model.Name "s"))}))}))}))}))}))),
(
Model.Name "hydra.core.lib.optionals.toList",
(Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "m"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.optionals.match")),
Model.applicationArgument = (Model.TermVariable (Model.Name "m"))})),
Model.applicationArgument = (Model.TermList [])})),
Model.applicationArgument = (Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "x"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermList [
Model.TermVariable (Model.Name "x")])}))}))}))),
(
Model.Name "hydra.core.lib.optionals.withDefault",
(Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "def"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "m"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.optionals.match")),
Model.applicationArgument = (Model.TermVariable (Model.Name "m"))})),
Model.applicationArgument = (Model.TermVariable (Model.Name "def"))})),
Model.applicationArgument = (Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "x"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermVariable (Model.Name "x"))}))}))}))}))),
(
Model.Name "hydra.core.lib.pairs.bimap",
(Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "f"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "g"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "p"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermPair (
Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "f")),
Model.applicationArgument = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.pairs.first")),
Model.applicationArgument = (Model.TermVariable (Model.Name "p"))}))}),
(Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "g")),
Model.applicationArgument = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.pairs.second")),
Model.applicationArgument = (Model.TermVariable (Model.Name "p"))}))}))))}))}))}))),
(
Model.Name "hydra.core.lib.sets.difference",
(Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "s1"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "s2"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.lists.foldl")),
Model.applicationArgument = (Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "acc"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "el"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.logic.ifElse")),
Model.applicationArgument = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.sets.member")),
Model.applicationArgument = (Model.TermVariable (Model.Name "el"))})),
Model.applicationArgument = (Model.TermVariable (Model.Name "s2"))}))})),
Model.applicationArgument = (Model.TermVariable (Model.Name "acc"))})),
Model.applicationArgument = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.sets.insert")),
Model.applicationArgument = (Model.TermVariable (Model.Name "el"))})),
Model.applicationArgument = (Model.TermVariable (Model.Name "acc"))}))}))}))}))})),
Model.applicationArgument = (Model.TermVariable (Model.Name "hydra.core.lib.sets.empty"))})),
Model.applicationArgument = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.sets.toList")),
Model.applicationArgument = (Model.TermVariable (Model.Name "s1"))}))}))}))}))),
(
Model.Name "hydra.core.lib.sets.filter",
(Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "p"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "s"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.sets.fromList")),
Model.applicationArgument = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.lists.filter")),
Model.applicationArgument = (Model.TermVariable (Model.Name "p"))})),
Model.applicationArgument = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.sets.toList")),
Model.applicationArgument = (Model.TermVariable (Model.Name "s"))}))}))}))}))}))),
(
Model.Name "hydra.core.lib.sets.intersection",
(Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "s1"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "s2"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.lists.foldl")),
Model.applicationArgument = (Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "acc"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "el"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.logic.ifElse")),
Model.applicationArgument = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.sets.member")),
Model.applicationArgument = (Model.TermVariable (Model.Name "el"))})),
Model.applicationArgument = (Model.TermVariable (Model.Name "s2"))}))})),
Model.applicationArgument = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.sets.insert")),
Model.applicationArgument = (Model.TermVariable (Model.Name "el"))})),
Model.applicationArgument = (Model.TermVariable (Model.Name "acc"))}))})),
Model.applicationArgument = (Model.TermVariable (Model.Name "acc"))}))}))}))})),
Model.applicationArgument = (Model.TermVariable (Model.Name "hydra.core.lib.sets.empty"))})),
Model.applicationArgument = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.sets.toList")),
Model.applicationArgument = (Model.TermVariable (Model.Name "s1"))}))}))}))}))),
(
Model.Name "hydra.core.lib.sets.map",
(Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "f"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "s"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.sets.fromList")),
Model.applicationArgument = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.lists.map")),
Model.applicationArgument = (Model.TermVariable (Model.Name "f"))})),
Model.applicationArgument = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.sets.toList")),
Model.applicationArgument = (Model.TermVariable (Model.Name "s"))}))}))}))}))}))),
(
Model.Name "hydra.core.lib.sets.union",
(Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "s1"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "s2"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.lists.foldl")),
Model.applicationArgument = (Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "acc"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "el"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.sets.insert")),
Model.applicationArgument = (Model.TermVariable (Model.Name "el"))})),
Model.applicationArgument = (Model.TermVariable (Model.Name "acc"))}))}))}))})),
Model.applicationArgument = (Model.TermVariable (Model.Name "s2"))})),
Model.applicationArgument = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.sets.toList")),
Model.applicationArgument = (Model.TermVariable (Model.Name "s1"))}))}))}))}))),
(
Model.Name "hydra.core.lib.sets.unions",
(Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "ss"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.lists.foldl")),
Model.applicationArgument = (Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "acc"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermLambda (Model.Lambda {
Model.lambdaParameter = (Model.Name "s"),
Model.lambdaDomain = Nothing,
Model.lambdaBody = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermApplication (Model.Application {
Model.applicationFunction = (Model.TermVariable (Model.Name "hydra.core.lib.sets.union")),
Model.applicationArgument = (Model.TermVariable (Model.Name "acc"))})),
Model.applicationArgument = (Model.TermVariable (Model.Name "s"))}))}))}))})),
Model.applicationArgument = (Model.TermVariable (Model.Name "hydra.core.lib.sets.empty"))})),
Model.applicationArgument = (Model.TermVariable (Model.Name "ss"))}))})))]