traq
Safe HaskellSafe-Inferred
LanguageHaskell2010

Traq.Primitives.Search.Symbolic

Synopsis

Search Primitive supporting symbolic cost

newtype QSearchSym size prec #

Constructors

QSearchSym (PrimSearch (Sym size) (Sym prec)) 

Instances

Instances details
Generic (QSearchSym size prec) # 
Instance details

Defined in Traq.Primitives.Search.Symbolic

Associated Types

type Rep (QSearchSym size prec) :: Type -> Type #

Methods

from :: QSearchSym size prec -> Rep (QSearchSym size prec) x #

to :: Rep (QSearchSym size prec) x -> QSearchSym size prec #

Show size => Show (QSearchSym size prec) # 
Instance details

Defined in Traq.Primitives.Search.Symbolic

Methods

showsPrec :: Int -> QSearchSym size prec -> ShowS #

show :: QSearchSym size prec -> String #

showList :: [QSearchSym size prec] -> ShowS #

Eq size => Eq (QSearchSym size prec) # 
Instance details

Defined in Traq.Primitives.Search.Symbolic

Methods

(==) :: QSearchSym size prec -> QSearchSym size prec -> Bool #

(/=) :: QSearchSym size prec -> QSearchSym size prec -> Bool #

Show size => SerializePrim (QSearchSym size prec) # 
Instance details

Defined in Traq.Primitives.Search.Symbolic

Methods

primNames :: [Ident] #

primNameOf :: QSearchSym size prec -> Ident #

parsePrimParams :: TokenParser () -> Ident -> Parser (QSearchSym size prec) #

printPrimParams :: QSearchSym size prec -> [String] #

TypingReqs size => TypeCheckPrim (QSearchSym size prec) (Sym size) # 
Instance details

Defined in Traq.Primitives.Search.Symbolic

Methods

inferRetTypesPrim :: forall ext' shape m. (m ~ TypeChecker ext', Sym size ~ SizeType ext', shape ~ PrimFnShape (QSearchSym size prec)) => QSearchSym size prec -> shape (FnType (Sym size)) -> m [VarType (Sym size)] #

(TypingReqs size, Show prec, Num prec, Eq prec) => QuantumHavocCostPrim (QSearchSym size prec) (Sym size) (Sym prec) # 
Instance details

Defined in Traq.Primitives.Search.Symbolic

Methods

quantumQueryCostsQuantum :: QSearchSym size prec -> FailProb (Sym prec) -> PrimFnShape (QSearchSym size prec) (Sym prec) #

quantumQueryCostsUnitary :: QSearchSym size prec -> FailProb (Sym prec) -> PrimFnShape (QSearchSym size prec) (UnitaryQueries (Sym prec)) #

quantumExprCosts :: (CostModel cost, Sym prec ~ PrecType cost) => QSearchSym size prec -> FailProb (Sym prec) -> cost #

(TypingReqs size, Show prec, Num prec, Eq prec) => UnitaryCostPrim (QSearchSym size prec) (Sym size) (Sym prec) # 
Instance details

Defined in Traq.Primitives.Search.Symbolic

Methods

unitaryQueryCosts :: QSearchSym size prec -> FailProb (Sym prec) -> PrimFnShape (QSearchSym size prec) (UnitaryQueries (Sym prec)) #

unitaryExprCosts :: (CostModel cost, Sym prec ~ PrecType cost) => QSearchSym size prec -> FailProb (Sym prec) -> cost #

(PrimSearch (Sym size) (Sym prec)) :<: (QSearchSym size prec) # 
Instance details

Defined in Traq.Primitives.Search.Symbolic

Methods

inject :: PrimSearch (Sym size) (Sym prec) -> QSearchSym size prec #

project :: QSearchSym size prec -> Maybe (PrimSearch (Sym size) (Sym prec)) #

type Rep (QSearchSym size prec) # 
Instance details

Defined in Traq.Primitives.Search.Symbolic

type Rep (QSearchSym size prec) = D1 ('MetaData "QSearchSym" "Traq.Primitives.Search.Symbolic" "traq-0.2.0.0-inplace" 'True) (C1 ('MetaCons "QSearchSym" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (PrimSearch (Sym size) (Sym prec)))))
type PrecType (QSearchSym size prec) # 
Instance details

Defined in Traq.Primitives.Search.Symbolic

type PrecType (QSearchSym size prec) = Sym prec
type SizeType (QSearchSym size prec) # 
Instance details

Defined in Traq.Primitives.Search.Symbolic

type SizeType (QSearchSym size prec) = Sym size
type PrimFnShape (QSearchSym size prec) # 
Instance details

Defined in Traq.Primitives.Search.Symbolic

Formulas

_QryU :: forall size prec. (Show size, Show prec) => Sym size -> FailProb (Sym prec) -> Sym prec #

_QryQmax :: forall size prec. (Show size, Show prec) => Sym size -> FailProb (Sym prec) -> Sym prec #