{-# LANGUAGE BangPatterns #-}
{-# LANGUAGE EmptyCase #-}
{-# LANGUAGE EmptyDataDecls #-}
{-# LANGUAGE ExistentialQuantification #-}
{-# LANGUAGE NoMonomorphismRestriction #-}
{-# LANGUAGE OverloadedStrings #-}
{-# LANGUAGE PatternSynonyms #-}
{-# LANGUAGE RankNTypes #-}
{-# LANGUAGE ScopedTypeVariables #-}
{-# OPTIONS_GHC -Wno-overlapping-patterns #-}
module MAlonzo.Code.Data.List.Membership.Setoid where
import MAlonzo.RTE (coe, erased, AgdaAny, addInt, subInt, mulInt,
quotInt, remInt, geqInt, ltInt, eqInt, add64, sub64, mul64, quot64,
rem64, lt64, eq64, word64FromNat, word64ToNat)
import qualified MAlonzo.RTE
import qualified Data.Text
import qualified MAlonzo.Code.Agda.Builtin.List
import qualified MAlonzo.Code.Agda.Builtin.Sigma
import qualified MAlonzo.Code.Agda.Primitive
import qualified MAlonzo.Code.Data.List.Relation.Unary.Any
import qualified MAlonzo.Code.Data.Product
import qualified MAlonzo.Code.Relation.Binary.Bundles
import qualified MAlonzo.Code.Relation.Binary.Structures
d__'8712'__36 ::
MAlonzo.Code.Agda.Primitive.T_Level_14 ->
MAlonzo.Code.Agda.Primitive.T_Level_14 ->
MAlonzo.Code.Relation.Binary.Bundles.T_Setoid_44 ->
AgdaAny -> [AgdaAny] -> ()
d__'8712'__36 = erased
d__'8713'__44 ::
MAlonzo.Code.Agda.Primitive.T_Level_14 ->
MAlonzo.Code.Agda.Primitive.T_Level_14 ->
MAlonzo.Code.Relation.Binary.Bundles.T_Setoid_44 ->
AgdaAny -> [AgdaAny] -> ()
d__'8713'__44 = erased
d_mapWith'8712'_58 ::
MAlonzo.Code.Agda.Primitive.T_Level_14 ->
MAlonzo.Code.Agda.Primitive.T_Level_14 ->
MAlonzo.Code.Relation.Binary.Bundles.T_Setoid_44 ->
MAlonzo.Code.Agda.Primitive.T_Level_14 ->
() ->
[AgdaAny] ->
(AgdaAny ->
MAlonzo.Code.Data.List.Relation.Unary.Any.T_Any_34 -> AgdaAny) ->
[AgdaAny]
d_mapWith'8712'_58 ~v0 ~v1 v2 ~v3 ~v4 v5 v6
= du_mapWith'8712'_58 v2 v5 v6
du_mapWith'8712'_58 ::
MAlonzo.Code.Relation.Binary.Bundles.T_Setoid_44 ->
[AgdaAny] ->
(AgdaAny ->
MAlonzo.Code.Data.List.Relation.Unary.Any.T_Any_34 -> AgdaAny) ->
[AgdaAny]
du_mapWith'8712'_58 v0 v1 v2
= case coe v1 of
[] -> coe v1
(:) v3 v4
-> coe
MAlonzo.Code.Agda.Builtin.List.C__'8759'__22
(coe
v2 v3
(coe
MAlonzo.Code.Data.List.Relation.Unary.Any.C_here_46
(coe
MAlonzo.Code.Relation.Binary.Structures.d_refl_34
(MAlonzo.Code.Relation.Binary.Bundles.d_isEquivalence_60 (coe v0))
v3)))
(coe
du_mapWith'8712'_58 (coe v0) (coe v4)
(coe
(\ v5 v6 ->
coe
v2 v5
(coe MAlonzo.Code.Data.List.Relation.Unary.Any.C_there_54 v6))))
_ -> MAlonzo.RTE.mazUnreachableError
d_find_80 ::
MAlonzo.Code.Agda.Primitive.T_Level_14 ->
MAlonzo.Code.Agda.Primitive.T_Level_14 ->
MAlonzo.Code.Relation.Binary.Bundles.T_Setoid_44 ->
MAlonzo.Code.Agda.Primitive.T_Level_14 ->
(AgdaAny -> ()) ->
[AgdaAny] ->
MAlonzo.Code.Data.List.Relation.Unary.Any.T_Any_34 ->
MAlonzo.Code.Agda.Builtin.Sigma.T_Σ_14
d_find_80 ~v0 ~v1 v2 ~v3 ~v4 v5 v6 = du_find_80 v2 v5 v6
du_find_80 ::
MAlonzo.Code.Relation.Binary.Bundles.T_Setoid_44 ->
[AgdaAny] ->
MAlonzo.Code.Data.List.Relation.Unary.Any.T_Any_34 ->
MAlonzo.Code.Agda.Builtin.Sigma.T_Σ_14
du_find_80 v0 v1 v2
= case coe v2 of
MAlonzo.Code.Data.List.Relation.Unary.Any.C_here_46 v5
-> case coe v1 of
(:) v6 v7
-> coe
MAlonzo.Code.Agda.Builtin.Sigma.C__'44'__32 (coe v6)
(coe
MAlonzo.Code.Agda.Builtin.Sigma.C__'44'__32
(coe
MAlonzo.Code.Data.List.Relation.Unary.Any.C_here_46
(coe
MAlonzo.Code.Relation.Binary.Structures.d_refl_34
(MAlonzo.Code.Relation.Binary.Bundles.d_isEquivalence_60 (coe v0))
v6))
(coe v5))
_ -> MAlonzo.RTE.mazUnreachableError
MAlonzo.Code.Data.List.Relation.Unary.Any.C_there_54 v5
-> case coe v1 of
(:) v6 v7
-> coe
MAlonzo.Code.Data.Product.du_map_148 (coe (\ v8 -> v8))
(coe
(\ v8 ->
coe
MAlonzo.Code.Data.Product.du_map_148
(coe MAlonzo.Code.Data.List.Relation.Unary.Any.C_there_54)
(coe (\ v9 v10 -> v10))))
(coe du_find_80 (coe v0) (coe v7) (coe v5))
_ -> MAlonzo.RTE.mazUnreachableError
_ -> MAlonzo.RTE.mazUnreachableError
d_lose_90 ::
MAlonzo.Code.Agda.Primitive.T_Level_14 ->
MAlonzo.Code.Agda.Primitive.T_Level_14 ->
MAlonzo.Code.Relation.Binary.Bundles.T_Setoid_44 ->
MAlonzo.Code.Agda.Primitive.T_Level_14 ->
(AgdaAny -> ()) ->
(AgdaAny -> AgdaAny -> AgdaAny -> AgdaAny -> AgdaAny) ->
AgdaAny ->
[AgdaAny] ->
MAlonzo.Code.Data.List.Relation.Unary.Any.T_Any_34 ->
AgdaAny -> MAlonzo.Code.Data.List.Relation.Unary.Any.T_Any_34
d_lose_90 ~v0 ~v1 ~v2 ~v3 ~v4 v5 v6 v7 v8 v9
= du_lose_90 v5 v6 v7 v8 v9
du_lose_90 ::
(AgdaAny -> AgdaAny -> AgdaAny -> AgdaAny -> AgdaAny) ->
AgdaAny ->
[AgdaAny] ->
MAlonzo.Code.Data.List.Relation.Unary.Any.T_Any_34 ->
AgdaAny -> MAlonzo.Code.Data.List.Relation.Unary.Any.T_Any_34
du_lose_90 v0 v1 v2 v3 v4
= coe
MAlonzo.Code.Data.List.Relation.Unary.Any.du_map_76
(coe (\ v5 v6 -> coe v0 v1 v5 v6 v4)) (coe v2) (coe v3)