|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
ObjectInvariant
BinaryInvariant
SequenceScalar
Member
public final class Member
Represents long scalars that are always members of a sequence of long values. Prints as x in y[] where x is a long scalar and y[] is a sequence of long.
| Nested Class Summary |
|---|
| Nested classes/interfaces inherited from class Invariant |
|---|
Invariant.ClassVarnameComparator, Invariant.ClassVarnameFormulaComparator, Invariant.InvariantComparatorForPrinting, Invariant.Match |
| Field Summary | |
|---|---|
static Logger |
debug
|
static boolean |
dkconfig_enabled
Boolean. |
| Constructor Summary | |
|---|---|
protected |
Member()
|
protected |
Member(PptSlice ppt)
|
| Method Summary | |
|---|---|
InvariantStatus |
add_modified(long[] a,
long i,
int count)
This method need not check for falsified; that is done by the caller. |
InvariantStatus |
check_modified(long[] a,
long i,
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 |
String |
format_daikon()
|
String |
format_esc()
|
String |
format_java_family(OutputFormat format)
|
String |
format_java()
|
String |
format_simplify()
|
String |
format_using(OutputFormat format)
|
static Member |
get_proto()
Returns the prototype invariant for Member |
protected Member |
instantiate_dyn(PptSlice slice)
instantiates the invariant on the specified slice |
DiscardInfo |
isObviousDynamically(VarInfo[] vis)
Checks to see if this is obvious over the specified variables. |
static boolean |
isObviousMember(VarInfo sclvar,
VarInfo seqvar)
Check whether sclvar is a member of seqvar can be determined statically. |
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)
|
String |
repr()
For printing invariants, there are two interfaces: repr gives a low-level representation (repr_prop also prints the confidence), and format gives a high-level representation for user output. |
| Methods inherited from class SequenceScalar |
|---|
add_unmodified, add, check_unmodified, check, is_symmetric, resurrect_done_swapped, resurrect_done_unswapped, resurrect_done, scl_index, sclvar, sclvar, seq_first, seq_index, seqvar, seqvar, valid_types |
| Methods inherited from class BinaryInvariant |
|---|
add_unordered, check_unordered, find, get_swap |
| 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 Member(PptSlice ppt)
protected Member()
| Method Detail |
|---|
public static Member get_proto()
public boolean enabled()
enabled in class Invariantprotected Member 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 static boolean isObviousMember(VarInfo sclvar,
VarInfo seqvar)
public String repr()
Invariant
repr in class Invariantpublic String format_using(OutputFormat format)
format_using in class Invariantpublic String format_daikon()
public String format_java()
public String format_java_family(OutputFormat format)
public String format_esc()
public String format_simplify()
public InvariantStatus check_modified(long[] a,
long i,
int count)
check_modified in class SequenceScalar
public InvariantStatus add_modified(long[] a,
long i,
int count)
SequenceScalar
add_modified in class SequenceScalarprotected double computeConfidence()
Invariant
computeConfidence in class InvariantInvariant.getConfidence()public boolean isSameFormula(Invariant other)
isSameFormula in class Invariantpublic DiscardInfo isObviousDynamically(VarInfo[] vis)
(0 <= i <= j) ^ (A[] == B[]) ==> A[i] in B[0..j] (0 <= i <= j) ^ (A[] == B[]) ==> A[j] in B[i..] (A subset B) ==> A[i] in B
isObviousDynamically in class Invariant
|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||