{-# 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.Bool.Base 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.Bool
import qualified MAlonzo.Code.Agda.Primitive

-- Data.Bool.Base._≤_
d__'8804'__10 :: p -> p -> ()
d__'8804'__10 p
a0 p
a1 = ()
data T__'8804'__10 = C_f'8804't_12 | C_b'8804'b_16
-- Data.Bool.Base._<_
d__'60'__18 :: p -> p -> ()
d__'60'__18 p
a0 p
a1 = ()
data T__'60'__18 = C_f'60't_20
-- Data.Bool.Base.not
d_not_22 :: Bool -> Bool
d_not_22 :: Bool -> Bool
d_not_22 Bool
v0
  = if Bool -> Bool
forall a b. a -> b
coe Bool
v0
      then Bool -> Bool
forall a b. a -> b
coe Bool
MAlonzo.Code.Agda.Builtin.Bool.C_false_8
      else Bool -> Bool
forall a b. a -> b
coe Bool
MAlonzo.Code.Agda.Builtin.Bool.C_true_10
-- Data.Bool.Base._∧_
d__'8743'__24 :: Bool -> Bool -> Bool
d__'8743'__24 :: Bool -> Bool -> Bool
d__'8743'__24 Bool
v0 Bool
v1 = if Bool -> Bool
forall a b. a -> b
coe Bool
v0 then Bool -> Bool
forall a b. a -> b
coe Bool
v1 else Bool -> Bool
forall a b. a -> b
coe Bool
v0
-- Data.Bool.Base._∨_
d__'8744'__30 :: Bool -> Bool -> Bool
d__'8744'__30 :: Bool -> Bool -> Bool
d__'8744'__30 Bool
v0 Bool
v1 = if Bool -> Bool
forall a b. a -> b
coe Bool
v0 then Bool -> Bool
forall a b. a -> b
coe Bool
v0 else Bool -> Bool
forall a b. a -> b
coe Bool
v1
-- Data.Bool.Base._xor_
d__xor__36 :: Bool -> Bool -> Bool
d__xor__36 :: Bool -> Bool -> Bool
d__xor__36 Bool
v0 Bool
v1 = if Bool -> Bool
forall a b. a -> b
coe Bool
v0 then (Bool -> Bool) -> Any -> Bool
forall a b. a -> b
coe Bool -> Bool
d_not_22 (Bool -> Any
forall a b. a -> b
coe Bool
v1) else Bool -> Bool
forall a b. a -> b
coe Bool
v1
-- Data.Bool.Base.T
d_T_42 :: Bool -> ()
d_T_42 :: Bool -> ()
d_T_42 = Bool -> ()
forall a. a
erased
-- Data.Bool.Base.if_then_else_
d_if_then_else__44 ::
  MAlonzo.Code.Agda.Primitive.T_Level_18 ->
  () -> Bool -> AgdaAny -> AgdaAny -> AgdaAny
d_if_then_else__44 :: () -> () -> Bool -> Any -> Any -> Any
d_if_then_else__44 ~()
v0 ~()
v1 Bool
v2 Any
v3 Any
v4 = Bool -> Any -> Any -> Any
du_if_then_else__44 Bool
v2 Any
v3 Any
v4
du_if_then_else__44 :: Bool -> AgdaAny -> AgdaAny -> AgdaAny
du_if_then_else__44 :: Bool -> Any -> Any -> Any
du_if_then_else__44 Bool
v0 Any
v1 Any
v2 = if Bool -> Bool
forall a b. a -> b
coe Bool
v0 then Any -> Any
forall a b. a -> b
coe Any
v1 else Any -> Any
forall a b. a -> b
coe Any
v2