traq
Safe HaskellSafe-Inferred
LanguageHaskell2010

Traq.Primitives.Search.Symbolic

Synopsis

Search Primitive supporting symbolic cost

newtype QSearchSym sizeT precT #

Constructors

QSearchSym (PrimSearch (Sym sizeT) (Sym precT)) 

Instances

Instances details
Generic (QSearchSym sizeT precT) # 
Instance details

Defined in Traq.Primitives.Search.Symbolic

Associated Types

type Rep (QSearchSym sizeT precT) :: Type -> Type #

Methods

from :: QSearchSym sizeT precT -> Rep (QSearchSym sizeT precT) x #

to :: Rep (QSearchSym sizeT precT) x -> QSearchSym sizeT precT #

Show sizeT => Show (QSearchSym sizeT precT) # 
Instance details

Defined in Traq.Primitives.Search.Symbolic

Methods

showsPrec :: Int -> QSearchSym sizeT precT -> ShowS #

show :: QSearchSym sizeT precT -> String #

showList :: [QSearchSym sizeT precT] -> ShowS #

Eq sizeT => Eq (QSearchSym sizeT precT) # 
Instance details

Defined in Traq.Primitives.Search.Symbolic

Methods

(==) :: QSearchSym sizeT precT -> QSearchSym sizeT precT -> Bool #

(/=) :: QSearchSym sizeT precT -> QSearchSym sizeT precT -> Bool #

Show sizeT => SerializePrim (QSearchSym sizeT precT) # 
Instance details

Defined in Traq.Primitives.Search.Symbolic

Methods

primNames :: [Ident] #

primNameOf :: QSearchSym sizeT precT -> Ident #

parsePrimParams :: TokenParser () -> Ident -> Parser (QSearchSym sizeT precT) #

printPrimParams :: QSearchSym sizeT precT -> [String] #

TypingReqs sizeT => TypeCheckPrim (QSearchSym sizeT precT) (Sym sizeT) # 
Instance details

Defined in Traq.Primitives.Search.Symbolic

Methods

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

(Eq sizeT, Num sizeT, Num precT, Show sizeT, Show precT, Num precT, Eq precT) => QuantumHavocCostPrim (QSearchSym sizeT precT) (Sym sizeT) (Sym precT) # 
Instance details

Defined in Traq.Primitives.Search.Symbolic

Methods

quantumQueryCostsQuantum :: QSearchSym sizeT precT -> FailProb (Sym precT) -> PrimFnShape (QSearchSym sizeT precT) (Sym precT) #

quantumQueryCostsUnitary :: QSearchSym sizeT precT -> FailProb (Sym precT) -> PrimFnShape (QSearchSym sizeT precT) (UnitaryQueries (Sym precT)) #

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

(Eq sizeT, Num sizeT, Show sizeT, Show precT, Num precT, Eq precT) => UnitaryCostPrim (QSearchSym sizeT precT) (Sym sizeT) (Sym precT) # 
Instance details

Defined in Traq.Primitives.Search.Symbolic

Methods

unitaryQueryCosts :: QSearchSym sizeT precT -> FailProb (Sym precT) -> PrimFnShape (QSearchSym sizeT precT) (UnitaryQueries (Sym precT)) #

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

(PrimSearch (Sym sizeT) (Sym precT)) :<: (QSearchSym sizeT precT) # 
Instance details

Defined in Traq.Primitives.Search.Symbolic

Methods

inject :: PrimSearch (Sym sizeT) (Sym precT) -> QSearchSym sizeT precT #

project :: QSearchSym sizeT precT -> Maybe (PrimSearch (Sym sizeT) (Sym precT)) #

type Rep (QSearchSym sizeT precT) # 
Instance details

Defined in Traq.Primitives.Search.Symbolic

type Rep (QSearchSym sizeT precT) = 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 sizeT) (Sym precT)))))
type PrecType (QSearchSym sizeT precT) # 
Instance details

Defined in Traq.Primitives.Search.Symbolic

type PrecType (QSearchSym sizeT precT) = Sym precT
type SizeType (QSearchSym sizeT precT) # 
Instance details

Defined in Traq.Primitives.Search.Symbolic

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

Defined in Traq.Primitives.Search.Symbolic

Formulas

_QryU :: forall sizeT precT. (Show sizeT, Show precT) => Sym sizeT -> FailProb (Sym precT) -> Sym precT #

_QryQmax :: forall sizeT precT. (Show sizeT, Show precT) => Sym sizeT -> FailProb (Sym precT) -> Sym precT #