daikon.inv.ternary.threeScalar
Class ThreeScalar
Object
Invariant
TernaryInvariant
ThreeScalar
- All Implemented Interfaces:
- Serializable, Cloneable
- Direct Known Subclasses:
- FunctionBinary, LinearTernary
public abstract class ThreeScalar
- extends TernaryInvariant
Abstract base class used for comparing three long scalars.
- See Also:
- Serialized Form
| Fields inherited from class Invariant |
CONFIDENCE_JUSTIFIED, CONFIDENCE_NEVER, CONFIDENCE_UNJUSTIFIED, debug, debugFlow, debugGuarding, debugIsObvious, debugIsWorthPrinting, debugPrint, debugPrintEquality, dkconfig_confidence_limit, dkconfig_fuzzy_ratio, dkconfig_simplify_define_predicates, falsified, isGuardingPredicate, min_mod_non_missing_samples, ppt, PROBABILITY_JUSTIFIED, PROBABILITY_NEVER, PROBABILITY_UNJUSTIFIED |
|
Method Summary |
abstract InvariantStatus |
add_modified(long v1,
long v2,
long v3,
int count)
This method need not check for falsified;
that is done by the caller. |
InvariantStatus |
add_unmodified(long v1,
long v2,
long v3,
int count)
By default, do nothing if the value hasn't been seen yet. |
InvariantStatus |
add(Object val1,
Object val2,
Object val3,
int mod_index,
int count)
|
abstract InvariantStatus |
check_modified(long v1,
long v2,
long v3,
int count)
|
InvariantStatus |
check_unmodified(long v1,
long v2,
long v3,
int count)
|
InvariantStatus |
check(Object val1,
Object val2,
Object val3,
int mod_index,
int count)
|
boolean |
valid_types(VarInfo[] vis)
Returns whether or not the specified types are valid |
VarInfo |
var1()
|
VarInfo |
var2()
|
VarInfo |
var3()
|
| Methods inherited from class Invariant |
add_sample, asInvClass, clear_falsified, clone_and_permute, clone, computeConfidence, conf_is_ge, confidence_and, confidence_and, confidence_or, createGuardedInvariant, createGuardingPredicate, enabled, enoughSamples, falsify, find, format_too_few_samples, format_unimplemented, format_using, format, formatFuzzy, get_comparability, get_ni_suppressions, getConfidence, getGuardingList, getGuardingList, hasUninterestingConstant, instantiate_dyn, instantiate_ok, instantiate, is_false, is_ni_suppressed, isActive, isAllPrestate, isExact, isExclusiveFormula, isInteresting, isObvious, isObviousDynamically_SomeInEquality, isObviousDynamically_SomeInEqualityHelper, isObviousDynamically, isObviousDynamically, isObviousStatically_AllInEquality, isObviousStatically_SomeInEquality, isObviousStatically_SomeInEqualityHelper, isObviousStatically, isObviousStatically, isReflexive, isSameFormula, isSameInvariant, isValidEscExpression, isValidExpression, isWorthPrinting, justified, log, log, logDetail, logOn, match, merge, mergeFormulasOk, permute, prob_and, prob_and, prob_is_ge, prob_or, repCheck, repr_prob, repr, resurrect, simplify_format_double, simplify_format_long, simplify_format_string, state_match, toString, toString, transfer, usesVar, usesVar, usesVarDerived, varNames |
ThreeScalar
protected ThreeScalar(PptSlice ppt)
valid_types
public final boolean valid_types(VarInfo[] vis)
- Returns whether or not the specified types are valid
- Overrides:
valid_types in class Invariant
- See Also:
Invariant.instantiate_ok(VarInfo[])
var1
public VarInfo var1()
var2
public VarInfo var2()
var3
public VarInfo var3()
check
public InvariantStatus check(Object val1,
Object val2,
Object val3,
int mod_index,
int count)
- Specified by:
check in class TernaryInvariant
add
public InvariantStatus add(Object val1,
Object val2,
Object val3,
int mod_index,
int count)
- Specified by:
add in class TernaryInvariant
check_modified
public abstract InvariantStatus check_modified(long v1,
long v2,
long v3,
int count)
check_unmodified
public InvariantStatus check_unmodified(long v1,
long v2,
long v3,
int count)
add_modified
public abstract InvariantStatus add_modified(long v1,
long v2,
long v3,
int count)
- This method need not check for falsified;
that is done by the caller.
add_unmodified
public InvariantStatus add_unmodified(long v1,
long v2,
long v3,
int count)
- By default, do nothing if the value hasn't been seen yet.
Subclasses can override this.