{-# LANGUAGE QuantifiedConstraints, DataKinds, MonoLocalBinds, UndecidableInstances #-} module HordeAd.Core.AstInterpret ( ) where import Prelude import GHC.TypeLits (KnownNat) class Num (ranked r y) => BooleanMatchesYR ranked r y where instance Num (ranked r y) => BooleanMatchesYR ranked r y where class ((Show rc42, Eq rc42, KnownNat y42) => c ranked rc42 y42) => CRankedY2 ranked c rc42 y42 where instance ((Show rc42, Eq rc42, KnownNat y42) => c ranked rc42 y42) => CRankedY2 ranked c rc42 y42 where interpretAst :: forall ranked r. ( Show r , Ord r , CRankedY2 ranked BooleanMatchesYR r 7 , Tensor ranked r ) => ranked r 7 -> ranked r 7 interpretAst arg = arg + arg class ((KnownNat y20, Ord r20) => c (ranked r20 y20)) => CRankedR ranked c r20 y20 where instance ((KnownNat y20, Ord r20) => c (ranked r20 y20)) => CRankedR ranked c r20 y20 where class CRankedR ranked Num r 7 => Tensor ranked r where