foxdec-0.1.0.0: Formally Verified x86-64 Decompilation
Safe HaskellSafe-Inferred
LanguageHaskell2010

WithAbstractPredicates.Class

Documentation

class (Show v, Ord v, Eq pred, Eq finit, BinaryClass bin, Show pred, Show finit) => WithAbstractPredicates bin pred finit v | pred -> finit, pred -> v where Source #

Methods

symbolically_execute :: LiftingEntry bin pred finit v -> Bool -> [Instruction] -> Maybe [Instruction] -> State (pred, VCS v) () Source #

verify_postcondition :: LiftingEntry bin pred finit v -> pred -> Bool Source #

finit_to_init_pred :: LiftingEntry bin pred finit v -> finit -> pred Source #

pred_to_finit :: LiftingEntry bin pred finit v -> pred -> finit Source #

resolve_indirection :: LiftingEntry bin pred finit v -> pred -> [Instruction] -> Indirections Source #

is_weaker_than :: LiftingEntry bin pred finit v -> pred -> pred -> Bool Source #

join_preds :: LiftingEntry bin pred finit v -> pred -> pred -> pred Source #

join_finits :: LiftingEntry bin pred finit v -> finit -> finit -> finit Source #

new_finit :: Lifting bin pred finit v -> finit Source #

pp_finit :: Lifting bin pred finit v -> finit -> String Source #

Instances

Instances details
(Show v, Ord v, BinaryClass bin, WithAbstractSymbolicValues (bin, Config, L0 (Sstate v p) (FInit v p) v, Word64) v p) => WithAbstractPredicates bin (Sstate v p) (FInit v p) v Source # 
Instance details

Defined in WithAbstractSymbolicValues.InstanceOfAbstractPredicates

Methods

symbolically_execute :: LiftingEntry bin (Sstate v p) (FInit v p) v -> Bool -> [Instruction] -> Maybe [Instruction] -> State (Sstate v p, VCS v) () Source #

verify_postcondition :: LiftingEntry bin (Sstate v p) (FInit v p) v -> Sstate v p -> Bool Source #

finit_to_init_pred :: LiftingEntry bin (Sstate v p) (FInit v p) v -> FInit v p -> Sstate v p Source #

pred_to_finit :: LiftingEntry bin (Sstate v p) (FInit v p) v -> Sstate v p -> FInit v p Source #

resolve_indirection :: LiftingEntry bin (Sstate v p) (FInit v p) v -> Sstate v p -> [Instruction] -> Indirections Source #

is_weaker_than :: LiftingEntry bin (Sstate v p) (FInit v p) v -> Sstate v p -> Sstate v p -> Bool Source #

join_preds :: LiftingEntry bin (Sstate v p) (FInit v p) v -> Sstate v p -> Sstate v p -> Sstate v p Source #

join_finits :: LiftingEntry bin (Sstate v p) (FInit v p) v -> FInit v p -> FInit v p -> FInit v p Source #

new_finit :: Lifting bin (Sstate v p) (FInit v p) v -> FInit v p Source #

pp_finit :: Lifting bin (Sstate v p) (FInit v p) v -> FInit v p -> String Source #