daikon.inv.ternary.threeScalar
Class FunctionBinary.DivisionLong_xyz

Object
  extended by Invariant
      extended by TernaryInvariant
          extended by ThreeScalar
              extended by FunctionBinary
                  extended by FunctionBinary.DivisionLong_xyz
All Implemented Interfaces:
Serializable, Cloneable
Enclosing class:
FunctionBinary

public static class FunctionBinary.DivisionLong_xyz
extends FunctionBinary

Represents the invariant x = Division (y, z) over three long scalars.

See Also:
Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from class FunctionBinary
FunctionBinary.BitwiseAndLong_xyz, FunctionBinary.BitwiseAndLong_yxz, FunctionBinary.BitwiseAndLong_zxy, FunctionBinary.BitwiseOrLong_xyz, FunctionBinary.BitwiseOrLong_yxz, FunctionBinary.BitwiseOrLong_zxy, FunctionBinary.BitwiseXorLong_xyz, FunctionBinary.BitwiseXorLong_yxz, FunctionBinary.BitwiseXorLong_zxy, FunctionBinary.DivisionLong_xyz, FunctionBinary.DivisionLong_xzy, FunctionBinary.DivisionLong_yxz, FunctionBinary.DivisionLong_yzx, FunctionBinary.DivisionLong_zxy, FunctionBinary.DivisionLong_zyx, FunctionBinary.GcdLong_xyz, FunctionBinary.GcdLong_yxz, FunctionBinary.GcdLong_zxy, FunctionBinary.LogicalAndLong_xyz, FunctionBinary.LogicalAndLong_yxz, FunctionBinary.LogicalAndLong_zxy, FunctionBinary.LogicalOrLong_xyz, FunctionBinary.LogicalOrLong_yxz, FunctionBinary.LogicalOrLong_zxy, FunctionBinary.LogicalXorLong_xyz, FunctionBinary.LogicalXorLong_yxz, FunctionBinary.LogicalXorLong_zxy, FunctionBinary.LshiftLong_xyz, FunctionBinary.LshiftLong_xzy, FunctionBinary.LshiftLong_yxz, FunctionBinary.LshiftLong_yzx, FunctionBinary.LshiftLong_zxy, FunctionBinary.LshiftLong_zyx, FunctionBinary.MaximumLong_xyz, FunctionBinary.MaximumLong_yxz, FunctionBinary.MaximumLong_zxy, FunctionBinary.MinimumLong_xyz, FunctionBinary.MinimumLong_yxz, FunctionBinary.MinimumLong_zxy, FunctionBinary.ModLong_xyz, FunctionBinary.ModLong_xzy, FunctionBinary.ModLong_yxz, FunctionBinary.ModLong_yzx, FunctionBinary.ModLong_zxy, FunctionBinary.ModLong_zyx, FunctionBinary.MultiplyLong_xyz, FunctionBinary.MultiplyLong_yxz, FunctionBinary.MultiplyLong_zxy, FunctionBinary.PowerLong_xyz, FunctionBinary.PowerLong_xzy, FunctionBinary.PowerLong_yxz, FunctionBinary.PowerLong_yzx, FunctionBinary.PowerLong_zxy, FunctionBinary.PowerLong_zyx, FunctionBinary.RshiftSignedLong_xyz, FunctionBinary.RshiftSignedLong_xzy, FunctionBinary.RshiftSignedLong_yxz, FunctionBinary.RshiftSignedLong_yzx, FunctionBinary.RshiftSignedLong_zxy, FunctionBinary.RshiftSignedLong_zyx, FunctionBinary.RshiftUnsignedLong_xyz, FunctionBinary.RshiftUnsignedLong_xzy, FunctionBinary.RshiftUnsignedLong_yxz, FunctionBinary.RshiftUnsignedLong_yzx, FunctionBinary.RshiftUnsignedLong_zxy, FunctionBinary.RshiftUnsignedLong_zyx
 
Nested classes/interfaces inherited from class Invariant
Invariant.ClassVarnameComparator, Invariant.ClassVarnameFormulaComparator, Invariant.InvariantComparatorForPrinting, Invariant.Match
 
Field Summary
 
Fields inherited from class FunctionBinary
debug, dkconfig_enabled
 
Fields inherited from class Invariant
CONFIDENCE_JUSTIFIED, CONFIDENCE_NEVER, CONFIDENCE_UNJUSTIFIED, 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
 
Constructor Summary
FunctionBinary.DivisionLong_xyz()
           
 
Method Summary
 InvariantStatus add_modified(long x, long y, long z, int count)
          This method need not check for falsified; that is done by the caller.
 InvariantStatus check_modified(long x, long y, long z, int count)
           
 long func(long y, long z)
           
 int get_function_id()
           
 String[] get_method_name()
           
 NISuppressionSet get_ni_suppressions()
          Returns a list of non-instantiating suppressions for this invariant.
static FunctionBinary.DivisionLong_xyz get_proto()
          Returns the prototype invariant for DivisionLong_xyz
 int get_var_order()
           
protected  FunctionBinary.DivisionLong_xyz instantiate_dyn(PptSlice slice)
          instantiate an invariant on the specified slice
 boolean is_symmetric()
           
 boolean isDivision()
           
 boolean isExact()
          Subclasses should override.
 void set_function_id(int function_id)
           
 
Methods inherited from class FunctionBinary
add_ordered, argVar1, argVar2, check_ordered, computeConfidence, enabled, format_simplify, format_using, get_proto_all, instantiate_ok, isBitwiseAnd, isBitwiseOr, isBitwiseXor, isGcd, isLogicalAnd, isLogicalOr, isLogicalXor, isLshift, isMaximum, isMinimum, isMod, isMultiply, isObviousDynamically, isPower, isRshiftSigned, isRshiftUnsigned, isSameFormula, repr, resultVar, resurrect_done
 
Methods inherited from class ThreeScalar
add_unmodified, add, check_unmodified, check, valid_types, var1, var2, var3
 
Methods inherited from class Invariant
add_sample, asInvClass, clear_falsified, clone_and_permute, clone, conf_is_ge, confidence_and, confidence_and, confidence_or, createGuardedInvariant, createGuardingPredicate, enoughSamples, falsify, find, format_too_few_samples, format_unimplemented, format, formatFuzzy, get_comparability, getConfidence, getGuardingList, getGuardingList, hasUninterestingConstant, instantiate, is_false, is_ni_suppressed, isActive, isAllPrestate, isExclusiveFormula, isInteresting, isObvious, isObviousDynamically_SomeInEquality, isObviousDynamically_SomeInEqualityHelper, isObviousDynamically, isObviousStatically_AllInEquality, isObviousStatically_SomeInEquality, isObviousStatically_SomeInEqualityHelper, isObviousStatically, isObviousStatically, isReflexive, 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, resurrect, simplify_format_double, simplify_format_long, simplify_format_string, state_match, toString, toString, transfer, usesVar, usesVar, usesVarDerived, varNames
 
Methods inherited from class Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

FunctionBinary.DivisionLong_xyz

public FunctionBinary.DivisionLong_xyz()
Method Detail

get_proto

public static FunctionBinary.DivisionLong_xyz get_proto()
Returns the prototype invariant for DivisionLong_xyz


instantiate_dyn

protected FunctionBinary.DivisionLong_xyz instantiate_dyn(PptSlice slice)
instantiate an invariant on the specified slice

Overrides:
instantiate_dyn in class Invariant
Returns:
the new invariant

get_method_name

public String[] get_method_name()

get_function_id

public int get_function_id()

set_function_id

public void set_function_id(int function_id)

get_var_order

public int get_var_order()

is_symmetric

public boolean is_symmetric()

func

public long func(long y,
                 long z)

check_modified

public InvariantStatus check_modified(long x,
                                      long y,
                                      long z,
                                      int count)
Specified by:
check_modified in class ThreeScalar

add_modified

public InvariantStatus add_modified(long x,
                                    long y,
                                    long z,
                                    int count)
Description copied from class: ThreeScalar
This method need not check for falsified; that is done by the caller.

Specified by:
add_modified in class ThreeScalar

isDivision

public boolean isDivision()
Overrides:
isDivision in class FunctionBinary

isExact

public boolean isExact()
Description copied from class: Invariant
Subclasses should override. An exact invariant indicates that given all but one variable value, the last one can be computed. (I think that's correct, anyway.) Examples are IntComparison (when only equality is possible), LinearBinary, FunctionUnary. OneOf is treated differently, as an interface. The result of this method does not depend on whether the invariant is justified, destroyed, etc.

Overrides:
isExact in class Invariant

get_ni_suppressions

public NISuppressionSet get_ni_suppressions()
Returns a list of non-instantiating suppressions for this invariant.

Overrides:
get_ni_suppressions in class Invariant