traq
Safe HaskellSafe-Inferred
LanguageHaskell2010

Traq.Analysis.Cost.Unitary

Synopsis

Documentation

class (CostReqs size prec, SizeType ext ~ size, PrecType ext ~ prec) => CostU ext size prec | ext -> size prec where #

Cost w.r.t. unitary compiler

Methods

costU :: forall ext' costT m. (m ~ CostAnalysisMonad ext', CostU ext' size prec, CostModelReqs size prec costT) => ext -> m costT #

Instances

Instances details
(UnitaryCostPrim prim size prec, CostReqs size prec) => CostU (AnnFailProb (Primitive prim)) size prec # 
Instance details

Defined in Traq.Primitives.Class

Methods

costU :: forall ext' costT m. (m ~ CostAnalysisMonad ext', CostU ext' size prec, CostModelReqs size prec costT) => AnnFailProb (Primitive prim) -> m costT #

CostU ext size prec => CostU (Expr ext) size prec # 
Instance details

Defined in Traq.Analysis.Cost.Unitary

Methods

costU :: forall ext' costT m. (m ~ CostAnalysisMonad ext', CostU ext' size prec, CostModelReqs size prec costT) => Expr ext -> m costT #

CostU ext size prec => CostU (NamedFunDef ext) size prec # 
Instance details

Defined in Traq.Analysis.Cost.Unitary

Methods

costU :: forall ext' costT m. (m ~ CostAnalysisMonad ext', CostU ext' size prec, CostModelReqs size prec costT) => NamedFunDef ext -> m costT #

CostU ext size prec => CostU (Stmt ext) size prec # 
Instance details

Defined in Traq.Analysis.Cost.Unitary

Methods

costU :: forall ext' costT m. (m ~ CostAnalysisMonad ext', CostU ext' size prec, CostModelReqs size prec costT) => Stmt ext -> m costT #

CostReqs size prec => CostU (Core size prec) size prec # 
Instance details

Defined in Traq.Analysis.Cost.Unitary

Methods

costU :: forall ext' costT m. (m ~ CostAnalysisMonad ext', CostU ext' size prec, CostModelReqs size prec costT) => Core size prec -> m costT #

costUProg :: forall cost ext size prec. (CostU ext size prec, CostModelReqs size prec cost) => Program ext -> cost #

Expected quantum cost of the entire program (i.e. last function as entry-point)