Interface Model

    • Method Detail

      • iterator

        default Iterator<Model.ValueAssignment> iterator()
        Iterate over all values present in the model. Note that iterating multiple times may be inefficient for some solvers, it is recommended to use BasicProverEnvironment.getModelAssignments() instead in this case.

        The iteration includes value assignments for...

        • all relevant free variables of simple type. If a variable is irrelevant for satisfiability, it can be null or missing in the iteration.
        • (nested) arrays with all accesses. If an array access is applied within a quantified context, some value assignments can be missing in the iteration. Please use a direct evaluation query to get the evaluation in such a case.
        • uninterpreted functions with all applications. If an uninterpreted function is applied within a quantified context, some value assignments can be missing in the iteration. Please use a direct evaluation query to get the evaluation in such a case.
        Specified by:
        iterator in interface Iterable<Model.ValueAssignment>
      • toString

        String toString()
        Pretty-printing of the model values.

        Please only use this method for debugging and not for retrieving relevant information about the model. The returned model representation is not intended for further usage like parsing, because we do not guarantee any specific format, e.g., for arrays and uninterpreted functions, and we allow the SMT solver to include arbitrary additional information about the current solver state, e.g., any available symbol in the solver, even from other provers, and temporary internal symbols.

        Overrides:
        toString in class Object