|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
ObjectInvariant
BinaryInvariant
TwoSequence
PairwiseIntLessEqual
public class PairwiseIntLessEqual
Represents an invariant between corresponding elements of two sequences of long values. The length of the sequences must match for the invariant to hold. A comparison is made over each (x[i], y[i]) pair. Thus, x[0] is compared to y[0], x[1] to y[1], and so forth. Prints as x[] <= y[].
| Nested Class Summary |
|---|
| Nested classes/interfaces inherited from class Invariant |
|---|
Invariant.ClassVarnameComparator, Invariant.ClassVarnameFormulaComparator, Invariant.InvariantComparatorForPrinting, Invariant.Match |
| Field Summary | |
|---|---|
static Logger |
debug
Debug tracer. |
static boolean |
dkconfig_enabled
Boolean. |
| Fields inherited from class TwoSequence |
|---|
swap |
| Constructor Summary | |
|---|---|
protected |
PairwiseIntLessEqual()
|
protected |
PairwiseIntLessEqual(PairwiseIntGreaterEqual swapped_pic)
|
protected |
PairwiseIntLessEqual(PptSlice ppt)
|
| Method Summary | |
|---|---|
InvariantStatus |
add_modified(long[] a1,
long[] a2,
int count)
Default implementation simply calls check. |
InvariantStatus |
check_modified(long[] a1,
long[] a2,
int count)
|
protected double |
computeConfidence()
This method computes the confidence that this invariant occurred by chance. |
boolean |
enabled()
Returns whether or not this invariant is enabled |
static PairwiseIntLessEqual |
find(PptSlice ppt)
|
String |
format_daikon()
|
String |
format_esc()
|
String |
format_java_family(OutputFormat format)
|
String |
format_simplify()
|
String |
format_using(OutputFormat format)
|
NISuppressionSet |
get_ni_suppressions()
Returns a list of non-instantiating suppressions for this invariant. |
static PairwiseIntLessEqual |
get_proto()
Returns the prototype invariant for PairwiseIntLessEqual |
String |
getComparator()
|
protected PairwiseIntLessEqual |
instantiate_dyn(PptSlice slice)
instantiates the invariant on the specified slice |
boolean |
instantiate_ok(VarInfo[] vis)
PairwiseIntLessEqual is only valid on integral types |
boolean |
isExclusiveFormula(Invariant other)
|
DiscardInfo |
isObviousDynamically(VarInfo[] vis)
Return non-null if this invariant is necessarily true from a fact that can be determined dynamically (after checking data) -- for the given varInfos rather than the varInfos of this. |
DiscardInfo |
isObviousStatically(VarInfo[] vis)
Return true if this invariant is necessarily true from a fact that can be determined statically -- for the given varInfos rather than the varInfos of this. |
boolean |
isSameFormula(Invariant other)
Return true if both invariants are the same class and the order of the variables (swap) is the same. |
String |
repr()
Returns a representation of the class. |
protected Invariant |
resurrect_done_swapped()
Swaps the variables by inverting the state of swap. |
static Class<PairwiseIntGreaterEqual> |
swap_class()
Returns the class that corresponds to this class with its variable order swapped. |
| Methods inherited from class TwoSequence |
|---|
add_unmodified, add, check_unmodified, check, get_swap, resurrect_done_unswapped, resurrect_done, valid_types, var1, var1, var2, var2 |
| Methods inherited from class BinaryInvariant |
|---|
add_unordered, check_unordered, find, is_symmetric |
| Methods inherited from class Object |
|---|
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
| Field Detail |
|---|
public static final Logger debug
public static boolean dkconfig_enabled
| Constructor Detail |
|---|
protected PairwiseIntLessEqual(PptSlice ppt)
protected PairwiseIntLessEqual()
protected PairwiseIntLessEqual(PairwiseIntGreaterEqual swapped_pic)
| Method Detail |
|---|
public static PairwiseIntLessEqual get_proto()
public boolean enabled()
enabled in class Invariantpublic boolean instantiate_ok(VarInfo[] vis)
instantiate_ok in class InvariantInvariant.valid_types(VarInfo[])protected PairwiseIntLessEqual instantiate_dyn(PptSlice slice)
instantiate_dyn in class Invariantpublic DiscardInfo isObviousStatically(VarInfo[] vis)
Invariant
isObviousStatically in class Invariantvis - The VarInfos this invariant is obvious over. The
position and data type of the variables is the *same* as that of
this.ppt.var_infos.public DiscardInfo isObviousDynamically(VarInfo[] vis)
Invariant
isObviousDynamically in class Invariantprotected Invariant resurrect_done_swapped()
TwoSequence
resurrect_done_swapped in class TwoSequencepublic static Class<PairwiseIntGreaterEqual> swap_class()
public String repr()
TwoSequence
repr in class TwoSequencepublic String getComparator()
public String format_using(OutputFormat format)
format_using in class Invariantpublic String format_daikon()
public String format_esc()
public String format_simplify()
public String format_java_family(OutputFormat format)
public InvariantStatus check_modified(long[] a1,
long[] a2,
int count)
check_modified in class TwoSequence
public InvariantStatus add_modified(long[] a1,
long[] a2,
int count)
TwoSequence
add_modified in class TwoSequenceprotected double computeConfidence()
Invariant
computeConfidence in class TwoSequenceInvariant.getConfidence()public boolean isSameFormula(Invariant other)
TwoSequence
isSameFormula in class TwoSequencepublic boolean isExclusiveFormula(Invariant other)
isExclusiveFormula in class Invariantpublic static PairwiseIntLessEqual find(PptSlice ppt)
public NISuppressionSet get_ni_suppressions()
get_ni_suppressions in class Invariant
|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||