mirror of
https://github.com/Z3Prover/z3
synced 2025-04-15 13:28:47 +00:00
Javadoc and indentation fixes
- A proper way to refer to the function in the same class is "#funcName" - There is no point in "@param p" declaration if no description follows it.
This commit is contained in:
parent
54e5bf2422
commit
8bb0010dc3
|
@ -326,13 +326,6 @@ public class Context extends IDisposable
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Create a datatype constructor.
|
* Create a datatype constructor.
|
||||||
* @param name
|
|
||||||
* @param recognizer
|
|
||||||
* @param fieldNames
|
|
||||||
* @param sorts
|
|
||||||
* @param sortRefs
|
|
||||||
*
|
|
||||||
* @return
|
|
||||||
**/
|
**/
|
||||||
public Constructor mkConstructor(String name, String recognizer,
|
public Constructor mkConstructor(String name, String recognizer,
|
||||||
String[] fieldNames, Sort[] sorts, int[] sortRefs)
|
String[] fieldNames, Sort[] sorts, int[] sortRefs)
|
||||||
|
@ -395,10 +388,6 @@ public class Context extends IDisposable
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Create mutually recursive data-types.
|
* Create mutually recursive data-types.
|
||||||
* @param names
|
|
||||||
* @param c
|
|
||||||
*
|
|
||||||
* @return
|
|
||||||
**/
|
**/
|
||||||
public DatatypeSort[] mkDatatypeSorts(String[] names, Constructor[][] c)
|
public DatatypeSort[] mkDatatypeSorts(String[] names, Constructor[][] c)
|
||||||
|
|
||||||
|
@ -410,7 +399,7 @@ public class Context extends IDisposable
|
||||||
* Update a datatype field at expression t with value v.
|
* Update a datatype field at expression t with value v.
|
||||||
* The function performs a record update at t. The field
|
* The function performs a record update at t. The field
|
||||||
* that is passed in as argument is updated with value v,
|
* that is passed in as argument is updated with value v,
|
||||||
* the remainig fields of t are unchanged.
|
* the remaining fields of t are unchanged.
|
||||||
**/
|
**/
|
||||||
public Expr MkUpdateField(FuncDecl field, Expr t, Expr v)
|
public Expr MkUpdateField(FuncDecl field, Expr t, Expr v)
|
||||||
throws Z3Exception
|
throws Z3Exception
|
||||||
|
@ -506,8 +495,8 @@ public class Context extends IDisposable
|
||||||
/**
|
/**
|
||||||
* Creates a fresh constant function declaration with a name prefixed with
|
* Creates a fresh constant function declaration with a name prefixed with
|
||||||
* {@code prefix"}.
|
* {@code prefix"}.
|
||||||
* @see mkFuncDecl(String,Sort,Sort)
|
* @see #mkFuncDecl(String,Sort,Sort)
|
||||||
* @see mkFuncDecl(String,Sort[],Sort)
|
* @see #mkFuncDecl(String,Sort[],Sort)
|
||||||
**/
|
**/
|
||||||
public FuncDecl mkFreshConstDecl(String prefix, Sort range)
|
public FuncDecl mkFreshConstDecl(String prefix, Sort range)
|
||||||
|
|
||||||
|
@ -1523,7 +1512,7 @@ public class Context extends IDisposable
|
||||||
{
|
{
|
||||||
checkContextMatch(t);
|
checkContextMatch(t);
|
||||||
return new IntExpr(this, Native.mkBv2int(nCtx(), t.getNativeObject(),
|
return new IntExpr(this, Native.mkBv2int(nCtx(), t.getNativeObject(),
|
||||||
(signed) ? true : false));
|
(signed)));
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -1663,8 +1652,8 @@ public class Context extends IDisposable
|
||||||
* {@code [domain -> range]}, and {@code i} must have the sort
|
* {@code [domain -> range]}, and {@code i} must have the sort
|
||||||
* {@code domain}. The sort of the result is {@code range}.
|
* {@code domain}. The sort of the result is {@code range}.
|
||||||
*
|
*
|
||||||
* @see mkArraySort
|
* @see #mkArraySort
|
||||||
* @see mkStore
|
* @see #mkStore
|
||||||
|
|
||||||
**/
|
**/
|
||||||
public Expr mkSelect(ArrayExpr a, Expr i)
|
public Expr mkSelect(ArrayExpr a, Expr i)
|
||||||
|
@ -1689,8 +1678,8 @@ public class Context extends IDisposable
|
||||||
* {@code select}) on all indices except for {@code i}, where it
|
* {@code select}) on all indices except for {@code i}, where it
|
||||||
* maps to {@code v} (and the {@code select} of {@code a}
|
* maps to {@code v} (and the {@code select} of {@code a}
|
||||||
* with respect to {@code i} may be a different value).
|
* with respect to {@code i} may be a different value).
|
||||||
* @see mkArraySort
|
* @see #mkArraySort
|
||||||
* @see mkSelect
|
* @see #mkSelect
|
||||||
|
|
||||||
**/
|
**/
|
||||||
public ArrayExpr mkStore(ArrayExpr a, Expr i, Expr v)
|
public ArrayExpr mkStore(ArrayExpr a, Expr i, Expr v)
|
||||||
|
@ -1707,8 +1696,8 @@ public class Context extends IDisposable
|
||||||
* Remarks: The resulting term is an array, such
|
* Remarks: The resulting term is an array, such
|
||||||
* that a {@code select} on an arbitrary index produces the value
|
* that a {@code select} on an arbitrary index produces the value
|
||||||
* {@code v}.
|
* {@code v}.
|
||||||
* @see mkArraySort
|
* @see #mkArraySort
|
||||||
* @see mkSelect
|
* @see #mkSelect
|
||||||
*
|
*
|
||||||
**/
|
**/
|
||||||
public ArrayExpr mkConstArray(Sort domain, Expr v)
|
public ArrayExpr mkConstArray(Sort domain, Expr v)
|
||||||
|
@ -1721,15 +1710,15 @@ public class Context extends IDisposable
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Maps f on the argument arrays.
|
* Maps f on the argument arrays.
|
||||||
* Remarks: Eeach element of
|
* Remarks: Each element of
|
||||||
* {@code args} must be of an array sort
|
* {@code args} must be of an array sort
|
||||||
* {@code [domain_i -> range_i]}. The function declaration
|
* {@code [domain_i -> range_i]}. The function declaration
|
||||||
* {@code f} must have type {@code range_1 .. range_n -> range}.
|
* {@code f} must have type {@code range_1 .. range_n -> range}.
|
||||||
* {@code v} must have sort range. The sort of the result is
|
* {@code v} must have sort range. The sort of the result is
|
||||||
* {@code [domain_i -> range]}.
|
* {@code [domain_i -> range]}.
|
||||||
* @see mkArraySort
|
* @see #mkArraySort
|
||||||
* @see mkSelect
|
* @see #mkSelect
|
||||||
* @see mkStore
|
* @see #mkStore
|
||||||
|
|
||||||
**/
|
**/
|
||||||
public ArrayExpr mkMap(FuncDecl f, ArrayExpr... args)
|
public ArrayExpr mkMap(FuncDecl f, ArrayExpr... args)
|
||||||
|
@ -2122,12 +2111,13 @@ public class Context extends IDisposable
|
||||||
*
|
*
|
||||||
* @return A Term with value {@code num}/{@code den}
|
* @return A Term with value {@code num}/{@code den}
|
||||||
* and sort Real
|
* and sort Real
|
||||||
* @see mkNumeral(String,Sort)
|
* @see #mkNumeral(String,Sort)
|
||||||
**/
|
**/
|
||||||
public RatNum mkReal(int num, int den)
|
public RatNum mkReal(int num, int den)
|
||||||
{
|
{
|
||||||
if (den == 0)
|
if (den == 0) {
|
||||||
throw new Z3Exception("Denominator is zero");
|
throw new Z3Exception("Denominator is zero");
|
||||||
|
}
|
||||||
|
|
||||||
return new RatNum(this, Native.mkReal(nCtx(), num, den));
|
return new RatNum(this, Native.mkReal(nCtx(), num, den));
|
||||||
}
|
}
|
||||||
|
@ -2257,7 +2247,7 @@ public class Context extends IDisposable
|
||||||
* 'names' of the bound variables, and {@code body} is the body
|
* 'names' of the bound variables, and {@code body} is the body
|
||||||
* of the quantifier. Quantifiers are associated with weights indicating the
|
* of the quantifier. Quantifiers are associated with weights indicating the
|
||||||
* importance of using the quantifier during instantiation.
|
* importance of using the quantifier during instantiation.
|
||||||
* Note that the bound variables are de-Bruijn indices created using {@link mkBound}.
|
* Note that the bound variables are de-Bruijn indices created using {@link #mkBound}.
|
||||||
* Z3 applies the convention that the last element in {@code names} and
|
* Z3 applies the convention that the last element in {@code names} and
|
||||||
* {@code sorts} refers to the variable with index 0, the second to last element
|
* {@code sorts} refers to the variable with index 0, the second to last element
|
||||||
* of {@code names} and {@code sorts} refers to the variable
|
* of {@code names} and {@code sorts} refers to the variable
|
||||||
|
@ -2287,7 +2277,7 @@ public class Context extends IDisposable
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Creates an existential quantifier using de-Brujin indexed variables.
|
* Creates an existential quantifier using de-Brujin indexed variables.
|
||||||
* @see mkForall(Sort[],Symbol[],Expr,int,Pattern[],Expr[],Symbol,Symbol)
|
* @see #mkForall(Sort[],Symbol[],Expr,int,Pattern[],Expr[],Symbol,Symbol)
|
||||||
**/
|
**/
|
||||||
public Quantifier mkExists(Sort[] sorts, Symbol[] names, Expr body,
|
public Quantifier mkExists(Sort[] sorts, Symbol[] names, Expr body,
|
||||||
int weight, Pattern[] patterns, Expr[] noPatterns,
|
int weight, Pattern[] patterns, Expr[] noPatterns,
|
||||||
|
@ -2414,7 +2404,7 @@ public class Context extends IDisposable
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Parse the given file using the SMT-LIB parser.
|
* Parse the given file using the SMT-LIB parser.
|
||||||
* @see parseSMTLIBString
|
* @see #parseSMTLIBString
|
||||||
**/
|
**/
|
||||||
public void parseSMTLIBFile(String fileName, Symbol[] sortNames,
|
public void parseSMTLIBFile(String fileName, Symbol[] sortNames,
|
||||||
Sort[] sorts, Symbol[] declNames, FuncDecl[] decls)
|
Sort[] sorts, Symbol[] declNames, FuncDecl[] decls)
|
||||||
|
@ -2528,7 +2518,7 @@ public class Context extends IDisposable
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Parse the given string using the SMT-LIB2 parser.
|
* Parse the given string using the SMT-LIB2 parser.
|
||||||
* @see parseSMTLIBString
|
* @see #parseSMTLIBString
|
||||||
*
|
*
|
||||||
* @return A conjunction of assertions in the scope (up to push/pop) at the
|
* @return A conjunction of assertions in the scope (up to push/pop) at the
|
||||||
* end of the string.
|
* end of the string.
|
||||||
|
@ -2542,8 +2532,9 @@ public class Context extends IDisposable
|
||||||
int cs = Sort.arrayLength(sorts);
|
int cs = Sort.arrayLength(sorts);
|
||||||
int cdn = Symbol.arrayLength(declNames);
|
int cdn = Symbol.arrayLength(declNames);
|
||||||
int cd = AST.arrayLength(decls);
|
int cd = AST.arrayLength(decls);
|
||||||
if (csn != cs || cdn != cd)
|
if (csn != cs || cdn != cd) {
|
||||||
throw new Z3Exception("Argument size mismatch");
|
throw new Z3Exception("Argument size mismatch");
|
||||||
|
}
|
||||||
return (BoolExpr) Expr.create(this, Native.parseSmtlib2String(nCtx(),
|
return (BoolExpr) Expr.create(this, Native.parseSmtlib2String(nCtx(),
|
||||||
str, AST.arrayLength(sorts), Symbol.arrayToNative(sortNames),
|
str, AST.arrayLength(sorts), Symbol.arrayToNative(sortNames),
|
||||||
AST.arrayToNative(sorts), AST.arrayLength(decls),
|
AST.arrayToNative(sorts), AST.arrayLength(decls),
|
||||||
|
@ -2552,13 +2543,12 @@ public class Context extends IDisposable
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Parse the given file using the SMT-LIB2 parser.
|
* Parse the given file using the SMT-LIB2 parser.
|
||||||
* @see parseSMTLIB2String
|
* @see #parseSMTLIB2String
|
||||||
**/
|
**/
|
||||||
public BoolExpr parseSMTLIB2File(String fileName, Symbol[] sortNames,
|
public BoolExpr parseSMTLIB2File(String fileName, Symbol[] sortNames,
|
||||||
Sort[] sorts, Symbol[] declNames, FuncDecl[] decls)
|
Sort[] sorts, Symbol[] declNames, FuncDecl[] decls)
|
||||||
|
|
||||||
{
|
{
|
||||||
|
|
||||||
int csn = Symbol.arrayLength(sortNames);
|
int csn = Symbol.arrayLength(sortNames);
|
||||||
int cs = Sort.arrayLength(sorts);
|
int cs = Sort.arrayLength(sorts);
|
||||||
int cdn = Symbol.arrayLength(declNames);
|
int cdn = Symbol.arrayLength(declNames);
|
||||||
|
@ -2649,9 +2639,10 @@ public class Context extends IDisposable
|
||||||
if (ts != null && ts.length > 0)
|
if (ts != null && ts.length > 0)
|
||||||
{
|
{
|
||||||
last = ts[ts.length - 1].getNativeObject();
|
last = ts[ts.length - 1].getNativeObject();
|
||||||
for (int i = ts.length - 2; i >= 0; i--)
|
for (int i = ts.length - 2; i >= 0; i--) {
|
||||||
last = Native.tacticAndThen(nCtx(), ts[i].getNativeObject(),
|
last = Native.tacticAndThen(nCtx(), ts[i].getNativeObject(),
|
||||||
last);
|
last);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
if (last != 0)
|
if (last != 0)
|
||||||
{
|
{
|
||||||
|
@ -2665,7 +2656,7 @@ public class Context extends IDisposable
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Create a tactic that applies {@code t1} to a Goal and then
|
* Create a tactic that applies {@code t1} to a Goal and then
|
||||||
* {@code t2"/> to every subgoal produced by <paramref name="t1}.
|
* {@code t2} to every subgoal produced by {@code t1}
|
||||||
*
|
*
|
||||||
* Remarks: Shorthand for {@code AndThen}.
|
* Remarks: Shorthand for {@code AndThen}.
|
||||||
**/
|
**/
|
||||||
|
@ -3000,7 +2991,7 @@ public class Context extends IDisposable
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Creates a new (incremental) solver.
|
* Creates a new (incremental) solver.
|
||||||
* @see mkSolver(Symbol)
|
* @see #mkSolver(Symbol)
|
||||||
**/
|
**/
|
||||||
public Solver mkSolver(String logic)
|
public Solver mkSolver(String logic)
|
||||||
{
|
{
|
||||||
|
@ -3840,7 +3831,7 @@ public class Context extends IDisposable
|
||||||
* that is returned must be handled externally and through native calls (see
|
* that is returned must be handled externally and through native calls (see
|
||||||
* e.g.,
|
* e.g.,
|
||||||
* @see Native#incRef
|
* @see Native#incRef
|
||||||
* @see wrapAST
|
* @see #wrapAST
|
||||||
* @param a The AST to unwrap.
|
* @param a The AST to unwrap.
|
||||||
**/
|
**/
|
||||||
public long unwrapAST(AST a)
|
public long unwrapAST(AST a)
|
||||||
|
@ -3879,7 +3870,7 @@ public class Context extends IDisposable
|
||||||
}
|
}
|
||||||
|
|
||||||
protected long m_ctx = 0;
|
protected long m_ctx = 0;
|
||||||
protected static Object creation_lock = new Object();
|
protected static final Object creation_lock = new Object();
|
||||||
|
|
||||||
long nCtx()
|
long nCtx()
|
||||||
{
|
{
|
||||||
|
@ -4050,7 +4041,7 @@ public class Context extends IDisposable
|
||||||
m_Params_DRQ.clear(this);
|
m_Params_DRQ.clear(this);
|
||||||
m_Probe_DRQ.clear(this);
|
m_Probe_DRQ.clear(this);
|
||||||
m_Solver_DRQ.clear(this);
|
m_Solver_DRQ.clear(this);
|
||||||
m_Optimize_DRQ.clear(this);
|
m_Optimize_DRQ.clear(this);
|
||||||
m_Statistics_DRQ.clear(this);
|
m_Statistics_DRQ.clear(this);
|
||||||
m_Tactic_DRQ.clear(this);
|
m_Tactic_DRQ.clear(this);
|
||||||
m_Fixedpoint_DRQ.clear(this);
|
m_Fixedpoint_DRQ.clear(this);
|
||||||
|
|
|
@ -33,7 +33,6 @@ public class Expr extends AST
|
||||||
* Returns a simplified version of the expression
|
* Returns a simplified version of the expression
|
||||||
* @return Expr
|
* @return Expr
|
||||||
* @throws Z3Exception on error
|
* @throws Z3Exception on error
|
||||||
* @return an Expr
|
|
||||||
**/
|
**/
|
||||||
public Expr simplify()
|
public Expr simplify()
|
||||||
{
|
{
|
||||||
|
@ -48,7 +47,6 @@ public class Expr extends AST
|
||||||
* @see Context#SimplifyHelp
|
* @see Context#SimplifyHelp
|
||||||
* @return an Expr
|
* @return an Expr
|
||||||
* @throws Z3Exception on error
|
* @throws Z3Exception on error
|
||||||
* @return an Expr
|
|
||||||
**/
|
**/
|
||||||
public Expr simplify(Params p)
|
public Expr simplify(Params p)
|
||||||
{
|
{
|
||||||
|
@ -193,7 +191,6 @@ public class Expr extends AST
|
||||||
*
|
*
|
||||||
* @return A copy of the term which is associated with {@code ctx}
|
* @return A copy of the term which is associated with {@code ctx}
|
||||||
* @throws Z3Exception on error
|
* @throws Z3Exception on error
|
||||||
* @return an Expr
|
|
||||||
**/
|
**/
|
||||||
public Expr translate(Context ctx)
|
public Expr translate(Context ctx)
|
||||||
{
|
{
|
||||||
|
@ -229,9 +226,8 @@ public class Expr extends AST
|
||||||
/**
|
/**
|
||||||
* Indicates whether the term is well-sorted.
|
* Indicates whether the term is well-sorted.
|
||||||
*
|
*
|
||||||
* @return True if the term is well-sorted, false otherwise.
|
|
||||||
* @throws Z3Exception on error
|
* @throws Z3Exception on error
|
||||||
* @return a boolean
|
* @return True if the term is well-sorted, false otherwise.
|
||||||
**/
|
**/
|
||||||
public boolean isWellSorted()
|
public boolean isWellSorted()
|
||||||
{
|
{
|
||||||
|
@ -2043,7 +2039,7 @@ public class Expr extends AST
|
||||||
* identity, but in the context of a register machine allows for terms of
|
* identity, but in the context of a register machine allows for terms of
|
||||||
* kind {@code isRelationUnion} to perform destructive updates to
|
* kind {@code isRelationUnion} to perform destructive updates to
|
||||||
* the first argument.
|
* the first argument.
|
||||||
* @see isRelationUnion
|
* @see #isRelationUnion
|
||||||
* @throws Z3Exception on error
|
* @throws Z3Exception on error
|
||||||
* @return a boolean
|
* @return a boolean
|
||||||
**/
|
**/
|
||||||
|
|
|
@ -164,7 +164,7 @@ public class Fixedpoint extends Z3Object
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Creates a backtracking point.
|
* Creates a backtracking point.
|
||||||
* @see pop
|
* @see #pop
|
||||||
**/
|
**/
|
||||||
public void push()
|
public void push()
|
||||||
{
|
{
|
||||||
|
@ -176,7 +176,7 @@ public class Fixedpoint extends Z3Object
|
||||||
* Remarks: Note that an exception is thrown if {@code pop}
|
* Remarks: Note that an exception is thrown if {@code pop}
|
||||||
* is called without a corresponding {@code push}
|
* is called without a corresponding {@code push}
|
||||||
*
|
*
|
||||||
* @see push
|
* @see #push
|
||||||
**/
|
**/
|
||||||
public void pop()
|
public void pop()
|
||||||
{
|
{
|
||||||
|
|
|
@ -45,9 +45,6 @@ public class FuncDecl extends AST
|
||||||
other.getNativeObject()));
|
other.getNativeObject()));
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* A string representations of the function declaration.
|
|
||||||
**/
|
|
||||||
@Override
|
@Override
|
||||||
public String toString()
|
public String toString()
|
||||||
{
|
{
|
||||||
|
@ -79,7 +76,7 @@ public class FuncDecl extends AST
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* The size of the domain of the function declaration
|
* The size of the domain of the function declaration
|
||||||
* @see getArity
|
* @see #getArity
|
||||||
**/
|
**/
|
||||||
public int getDomainSize()
|
public int getDomainSize()
|
||||||
{
|
{
|
||||||
|
@ -362,9 +359,6 @@ public class FuncDecl extends AST
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Create expression that applies function to arguments.
|
* Create expression that applies function to arguments.
|
||||||
* @param args
|
|
||||||
*
|
|
||||||
* @return
|
|
||||||
**/
|
**/
|
||||||
public Expr apply(Expr ... args)
|
public Expr apply(Expr ... args)
|
||||||
{
|
{
|
||||||
|
|
|
@ -68,7 +68,7 @@ public final class Global
|
||||||
* Restore the value of all global (and module) parameters.
|
* Restore the value of all global (and module) parameters.
|
||||||
* Remarks:
|
* Remarks:
|
||||||
* This command will not affect already created objects (such as tactics and solvers)
|
* This command will not affect already created objects (such as tactics and solvers)
|
||||||
* @see setParameter
|
* @see #setParameter
|
||||||
**/
|
**/
|
||||||
public static void resetParameters()
|
public static void resetParameters()
|
||||||
{
|
{
|
||||||
|
@ -84,7 +84,7 @@ public final class Global
|
||||||
public static void ToggleWarningMessages(boolean enabled)
|
public static void ToggleWarningMessages(boolean enabled)
|
||||||
|
|
||||||
{
|
{
|
||||||
Native.toggleWarningMessages((enabled) ? true : false);
|
Native.toggleWarningMessages((enabled));
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
@ -244,8 +244,8 @@ public class Model extends Z3Object
|
||||||
* in a formula. The interpretation for a sort is a finite set of distinct
|
* in a formula. The interpretation for a sort is a finite set of distinct
|
||||||
* values. We say this finite set is the "universe" of the sort.
|
* values. We say this finite set is the "universe" of the sort.
|
||||||
*
|
*
|
||||||
* @see getNumSorts
|
* @see #getNumSorts
|
||||||
* @see getSortUniverse
|
* @see #getSortUniverse
|
||||||
*
|
*
|
||||||
* @throws Z3Exception
|
* @throws Z3Exception
|
||||||
**/
|
**/
|
||||||
|
|
|
@ -32,7 +32,7 @@ public class Optimize extends Z3Object
|
||||||
**/
|
**/
|
||||||
public String getHelp()
|
public String getHelp()
|
||||||
{
|
{
|
||||||
return Native.optimizeGetHelp(getContext().nCtx(), getNativeObject());
|
return Native.optimizeGetHelp(getContext().nCtx(), getNativeObject());
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -42,7 +42,7 @@ public class Optimize extends Z3Object
|
||||||
**/
|
**/
|
||||||
public void setParameters(Params value)
|
public void setParameters(Params value)
|
||||||
{
|
{
|
||||||
Native.optimizeSetParams(getContext().nCtx(), getNativeObject(), value.getNativeObject());
|
Native.optimizeSetParams(getContext().nCtx(), getNativeObject(), value.getNativeObject());
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -50,7 +50,7 @@ public class Optimize extends Z3Object
|
||||||
**/
|
**/
|
||||||
public ParamDescrs getParameterDescriptions()
|
public ParamDescrs getParameterDescriptions()
|
||||||
{
|
{
|
||||||
return new ParamDescrs(getContext(), Native.optimizeGetParamDescrs(getContext().nCtx(), getNativeObject()));
|
return new ParamDescrs(getContext(), Native.optimizeGetParamDescrs(getContext().nCtx(), getNativeObject()));
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -129,9 +129,9 @@ public class Optimize extends Z3Object
|
||||||
|
|
||||||
public Handle AssertSoft(BoolExpr constraint, int weight, String group)
|
public Handle AssertSoft(BoolExpr constraint, int weight, String group)
|
||||||
{
|
{
|
||||||
getContext().checkContextMatch(constraint);
|
getContext().checkContextMatch(constraint);
|
||||||
Symbol s = getContext().mkSymbol(group);
|
Symbol s = getContext().mkSymbol(group);
|
||||||
return new Handle(this, Native.optimizeAssertSoft(getContext().nCtx(), getNativeObject(), constraint.getNativeObject(), Integer.toString(weight), s.getNativeObject()));
|
return new Handle(this, Native.optimizeAssertSoft(getContext().nCtx(), getNativeObject(), constraint.getNativeObject(), Integer.toString(weight), s.getNativeObject()));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -143,15 +143,15 @@ public class Optimize extends Z3Object
|
||||||
|
|
||||||
public Status Check()
|
public Status Check()
|
||||||
{
|
{
|
||||||
Z3_lbool r = Z3_lbool.fromInt(Native.optimizeCheck(getContext().nCtx(), getNativeObject()));
|
Z3_lbool r = Z3_lbool.fromInt(Native.optimizeCheck(getContext().nCtx(), getNativeObject()));
|
||||||
switch (r) {
|
switch (r) {
|
||||||
case Z3_L_TRUE:
|
case Z3_L_TRUE:
|
||||||
return Status.SATISFIABLE;
|
return Status.SATISFIABLE;
|
||||||
case Z3_L_FALSE:
|
case Z3_L_FALSE:
|
||||||
return Status.UNSATISFIABLE;
|
return Status.UNSATISFIABLE;
|
||||||
default:
|
default:
|
||||||
return Status.UNKNOWN;
|
return Status.UNKNOWN;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -159,7 +159,7 @@ public class Optimize extends Z3Object
|
||||||
**/
|
**/
|
||||||
public void Push()
|
public void Push()
|
||||||
{
|
{
|
||||||
Native.optimizePush(getContext().nCtx(), getNativeObject());
|
Native.optimizePush(getContext().nCtx(), getNativeObject());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -171,7 +171,7 @@ public class Optimize extends Z3Object
|
||||||
|
|
||||||
public void Pop()
|
public void Pop()
|
||||||
{
|
{
|
||||||
Native.optimizePop(getContext().nCtx(), getNativeObject());
|
Native.optimizePop(getContext().nCtx(), getNativeObject());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -198,7 +198,7 @@ public class Optimize extends Z3Object
|
||||||
**/
|
**/
|
||||||
public Handle MkMaximize(ArithExpr e)
|
public Handle MkMaximize(ArithExpr e)
|
||||||
{
|
{
|
||||||
return new Handle(this, Native.optimizeMaximize(getContext().nCtx(), getNativeObject(), e.getNativeObject()));
|
return new Handle(this, Native.optimizeMaximize(getContext().nCtx(), getNativeObject(), e.getNativeObject()));
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -207,7 +207,7 @@ public class Optimize extends Z3Object
|
||||||
**/
|
**/
|
||||||
public Handle MkMinimize(ArithExpr e)
|
public Handle MkMinimize(ArithExpr e)
|
||||||
{
|
{
|
||||||
return new Handle(this, Native.optimizeMinimize(getContext().nCtx(), getNativeObject(), e.getNativeObject()));
|
return new Handle(this, Native.optimizeMinimize(getContext().nCtx(), getNativeObject(), e.getNativeObject()));
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -215,7 +215,7 @@ public class Optimize extends Z3Object
|
||||||
**/
|
**/
|
||||||
private ArithExpr GetLower(int index)
|
private ArithExpr GetLower(int index)
|
||||||
{
|
{
|
||||||
return (ArithExpr)Expr.create(getContext(), Native.optimizeGetLower(getContext().nCtx(), getNativeObject(), index));
|
return (ArithExpr)Expr.create(getContext(), Native.optimizeGetLower(getContext().nCtx(), getNativeObject(), index));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -224,7 +224,7 @@ public class Optimize extends Z3Object
|
||||||
**/
|
**/
|
||||||
private ArithExpr GetUpper(int index)
|
private ArithExpr GetUpper(int index)
|
||||||
{
|
{
|
||||||
return (ArithExpr)Expr.create(getContext(), Native.optimizeGetUpper(getContext().nCtx(), getNativeObject(), index));
|
return (ArithExpr)Expr.create(getContext(), Native.optimizeGetUpper(getContext().nCtx(), getNativeObject(), index));
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -243,7 +243,7 @@ public class Optimize extends Z3Object
|
||||||
@Override
|
@Override
|
||||||
public String toString()
|
public String toString()
|
||||||
{
|
{
|
||||||
return Native.optimizeToString(getContext().nCtx(), getNativeObject());
|
return Native.optimizeToString(getContext().nCtx(), getNativeObject());
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -251,18 +251,18 @@ public class Optimize extends Z3Object
|
||||||
**/
|
**/
|
||||||
public Statistics getStatistics()
|
public Statistics getStatistics()
|
||||||
{
|
{
|
||||||
return new Statistics(getContext(), Native.optimizeGetStatistics(getContext().nCtx(), getNativeObject()));
|
return new Statistics(getContext(), Native.optimizeGetStatistics(getContext().nCtx(), getNativeObject()));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
Optimize(Context ctx, long obj) throws Z3Exception
|
Optimize(Context ctx, long obj) throws Z3Exception
|
||||||
{
|
{
|
||||||
super(ctx, obj);
|
super(ctx, obj);
|
||||||
}
|
}
|
||||||
|
|
||||||
Optimize(Context ctx) throws Z3Exception
|
Optimize(Context ctx) throws Z3Exception
|
||||||
{
|
{
|
||||||
super(ctx, Native.mkOptimize(ctx.nCtx()));
|
super(ctx, Native.mkOptimize(ctx.nCtx()));
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
@ -57,8 +57,8 @@ public class Solver extends Z3Object
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* The current number of backtracking points (scopes).
|
* The current number of backtracking points (scopes).
|
||||||
* @see pop
|
* @see #pop
|
||||||
* @see push
|
* @see #push
|
||||||
**/
|
**/
|
||||||
public int getNumScopes()
|
public int getNumScopes()
|
||||||
{
|
{
|
||||||
|
@ -68,7 +68,7 @@ public class Solver extends Z3Object
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Creates a backtracking point.
|
* Creates a backtracking point.
|
||||||
* @see pop
|
* @see #pop
|
||||||
**/
|
**/
|
||||||
public void push()
|
public void push()
|
||||||
{
|
{
|
||||||
|
@ -89,7 +89,7 @@ public class Solver extends Z3Object
|
||||||
* Remarks: Note that
|
* Remarks: Note that
|
||||||
* an exception is thrown if {@code n} is not smaller than
|
* an exception is thrown if {@code n} is not smaller than
|
||||||
* {@code NumScopes}
|
* {@code NumScopes}
|
||||||
* @see push
|
* @see #push
|
||||||
**/
|
**/
|
||||||
public void pop(int n)
|
public void pop(int n)
|
||||||
{
|
{
|
||||||
|
@ -127,24 +127,26 @@ public class Solver extends Z3Object
|
||||||
* using the Boolean constants in ps.
|
* using the Boolean constants in ps.
|
||||||
*
|
*
|
||||||
* Remarks:
|
* Remarks:
|
||||||
* This API is an alternative to <see cref="Check"/> with assumptions for
|
* This API is an alternative to {@link #check} with assumptions for
|
||||||
* extracting unsat cores.
|
* extracting unsat cores.
|
||||||
* Both APIs can be used in the same solver. The unsat core will contain a
|
* Both APIs can be used in the same solver. The unsat core will contain a
|
||||||
* combination
|
* combination
|
||||||
* of the Boolean variables provided using <see cref="AssertAndTrack"/>
|
* of the Boolean variables provided using {@code assertAndTrack}
|
||||||
* and the Boolean literals
|
* and the Boolean literals
|
||||||
* provided using <see cref="Check"/> with assumptions.
|
* provided using {@link #check} with assumptions.
|
||||||
**/
|
**/
|
||||||
public void assertAndTrack(BoolExpr[] constraints, BoolExpr[] ps)
|
public void assertAndTrack(BoolExpr[] constraints, BoolExpr[] ps)
|
||||||
{
|
{
|
||||||
getContext().checkContextMatch(constraints);
|
getContext().checkContextMatch(constraints);
|
||||||
getContext().checkContextMatch(ps);
|
getContext().checkContextMatch(ps);
|
||||||
if (constraints.length != ps.length)
|
if (constraints.length != ps.length) {
|
||||||
throw new Z3Exception("Argument size mismatch");
|
throw new Z3Exception("Argument size mismatch");
|
||||||
|
}
|
||||||
|
|
||||||
for (int i = 0; i < constraints.length; i++)
|
for (int i = 0; i < constraints.length; i++) {
|
||||||
Native.solverAssertAndTrack(getContext().nCtx(), getNativeObject(),
|
Native.solverAssertAndTrack(getContext().nCtx(), getNativeObject(),
|
||||||
constraints[i].getNativeObject(), ps[i].getNativeObject());
|
constraints[i].getNativeObject(), ps[i].getNativeObject());
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -152,13 +154,13 @@ public class Solver extends Z3Object
|
||||||
* using the Boolean constant p.
|
* using the Boolean constant p.
|
||||||
*
|
*
|
||||||
* Remarks:
|
* Remarks:
|
||||||
* This API is an alternative to <see cref="Check"/> with assumptions for
|
* This API is an alternative to {@link #check} with assumptions for
|
||||||
* extracting unsat cores.
|
* extracting unsat cores.
|
||||||
* Both APIs can be used in the same solver. The unsat core will contain a
|
* Both APIs can be used in the same solver. The unsat core will contain a
|
||||||
* combination
|
* combination
|
||||||
* of the Boolean variables provided using <see cref="AssertAndTrack"/>
|
* of the Boolean variables provided using {@link #assertAndTrack}
|
||||||
* and the Boolean literals
|
* and the Boolean literals
|
||||||
* provided using <see cref="Check"/> with assumptions.
|
* provided using {@link #check} with assumptions.
|
||||||
*/
|
*/
|
||||||
public void assertAndTrack(BoolExpr constraint, BoolExpr p)
|
public void assertAndTrack(BoolExpr constraint, BoolExpr p)
|
||||||
{
|
{
|
||||||
|
@ -194,9 +196,9 @@ public class Solver extends Z3Object
|
||||||
/**
|
/**
|
||||||
* Checks whether the assertions in the solver are consistent or not.
|
* Checks whether the assertions in the solver are consistent or not.
|
||||||
* Remarks:
|
* Remarks:
|
||||||
* @see getModel
|
* @see #getModel
|
||||||
* @see getUnsatCore
|
* @see #getUnsatCore
|
||||||
* @see getProof
|
* @see #getProof
|
||||||
**/
|
**/
|
||||||
public Status check(Expr... assumptions)
|
public Status check(Expr... assumptions)
|
||||||
{
|
{
|
||||||
|
@ -223,9 +225,9 @@ public class Solver extends Z3Object
|
||||||
/**
|
/**
|
||||||
* Checks whether the assertions in the solver are consistent or not.
|
* Checks whether the assertions in the solver are consistent or not.
|
||||||
* Remarks:
|
* Remarks:
|
||||||
* @see getModel
|
* @see #getModel
|
||||||
* @see getUnsatCore
|
* @see #getUnsatCore
|
||||||
* @see getProof
|
* @see #getProof
|
||||||
**/
|
**/
|
||||||
public Status check()
|
public Status check()
|
||||||
{
|
{
|
||||||
|
|
|
@ -27,8 +27,6 @@ public class Sort extends AST
|
||||||
{
|
{
|
||||||
/**
|
/**
|
||||||
* Equality operator for objects of type Sort.
|
* Equality operator for objects of type Sort.
|
||||||
* @param o
|
|
||||||
* @return
|
|
||||||
**/
|
**/
|
||||||
@Override
|
@Override
|
||||||
public boolean equals(Object o)
|
public boolean equals(Object o)
|
||||||
|
@ -139,10 +137,10 @@ public class Sort extends AST
|
||||||
return new FPSort(ctx, obj);
|
return new FPSort(ctx, obj);
|
||||||
case Z3_ROUNDING_MODE_SORT:
|
case Z3_ROUNDING_MODE_SORT:
|
||||||
return new FPRMSort(ctx, obj);
|
return new FPRMSort(ctx, obj);
|
||||||
case Z3_SEQ_SORT:
|
case Z3_SEQ_SORT:
|
||||||
return new SeqSort(ctx, obj);
|
return new SeqSort(ctx, obj);
|
||||||
case Z3_RE_SORT:
|
case Z3_RE_SORT:
|
||||||
return new ReSort(ctx, obj);
|
return new ReSort(ctx, obj);
|
||||||
default:
|
default:
|
||||||
throw new Z3Exception("Unknown sort kind");
|
throw new Z3Exception("Unknown sort kind");
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue