daikon
Class PptSlice0

Object
  extended by Ppt
      extended by PptSlice
          extended by PptSlice0
All Implemented Interfaces:
Serializable

public class PptSlice0
extends PptSlice

See Also:
Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from class PptSlice
PptSlice.ArityPptnameComparator, PptSlice.ArityVarnameComparator
 
Nested classes/interfaces inherited from class Ppt
Ppt.NameComparator
 
Field Summary
 
Fields inherited from class PptSlice
debug, debugFlow, debugGeneral, debugGuarding, invs, lineSep, parent
 
Fields inherited from class Ppt
emptyInvList, var_infos
 
Method Summary
 List<Invariant> add(ValueTuple vt, int count)
          This procedure accepts a sample (a ValueTuple), extracts the values from it, casts them to the proper types, and passes them along to the invariants proper.
 void addInvariant(Invariant inv)
          The invariant is typically an Implication; but PptSlice0 can contain other joiners than implications, such as "and" or "or".
 int arity()
           
 void checkRep()
           
 boolean hasImplication(Implication imp)
           
static PptSlice makeFakePrestate(PptSlice sliceTemplate)
           
 int num_mod_samples()
           
 int num_samples()
          Return an approximation of the number of samples seen on this slice
 int num_values()
          Return an approximation of the number of distinct values seen on this slice
 void removeInvariant(Invariant inv)
          This method actually removes the invariant from its PptSlice.
 void removeInvariants(List<Invariant> to_remove)
           
 
Methods inherited from class PptSlice
allPrestate, contains_inv_exact, contains_inv, containsOnlyGuardingPredicates, copy_new_invs, find_inv_by_class, find_inv_exact, is_inv_true, log, name, processOmissions, remove_falsified, repCheck, toString, trimToSize, usesVar, usesVar, usesVarDerived
 
Methods inherited from class Ppt
containsVar, find_var_by_name, indexOf, varNames, varNames
 
Methods inherited from class Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Method Detail

arity

public final int arity()
Specified by:
arity in class PptSlice

makeFakePrestate

public static PptSlice makeFakePrestate(PptSlice sliceTemplate)

checkRep

public void checkRep()

addInvariant

public void addInvariant(Invariant inv)
The invariant is typically an Implication; but PptSlice0 can contain other joiners than implications, such as "and" or "or". That feature isn't used as of November 2003.

Specified by:
addInvariant in class PptSlice

removeInvariant

public void removeInvariant(Invariant inv)
Description copied from class: PptSlice
This method actually removes the invariant from its PptSlice.

Overrides:
removeInvariant in class PptSlice

removeInvariants

public void removeInvariants(List<Invariant> to_remove)
Overrides:
removeInvariants in class PptSlice

hasImplication

public boolean hasImplication(Implication imp)

num_samples

public int num_samples()
Description copied from class: PptSlice
Return an approximation of the number of samples seen on this slice

Specified by:
num_samples in class PptSlice

num_mod_samples

public int num_mod_samples()

num_values

public int num_values()
Description copied from class: PptSlice
Return an approximation of the number of distinct values seen on this slice

Specified by:
num_values in class PptSlice

add

public List<Invariant> add(ValueTuple vt,
                           int count)
Description copied from class: PptSlice
This procedure accepts a sample (a ValueTuple), extracts the values from it, casts them to the proper types, and passes them along to the invariants proper. (The invariants accept typed values rather than a ValueTuple that encapsulates objects of any type whatever.)

Returns:
a List of Invariants that weakened due to the processing.