class Z3::Context

Overview

A Context manages all other Z3 objects, global configuration options, etc. Z3Py uses a default global context. For most applications this is sufficient. An application may use multiple Z3 contexts. Objects created in one context cannot be used in another one. However, several objects may be "translated" from one context to another. It is not safe to access Z3 objects from multiple threads. The only exception is the method #interrupt that can be used to interrupt a long computation. The initialization method receives global configuration options for the new context.

Defined in:

z3/context.cr
z3/context/arithmetic_operators.cr
z3/context/compare_operators.cr
z3/context/logic_operators.cr
z3/context/sorts.cr
z3/context/values.cr
z3/context/vars.cr

Constructors

Instance Method Summary

Constructor Detail

def self.new(config = Config.new) #

https://github.com/angr/angr-z3/blob/6fa85ad65404c0dbc8adf3e120fa076bd5c6d003/src/api/python/z3/z3.py#L163


[View source]

Instance Method Detail

def bit_vector_sort(size : Int32) : Sort #

[View source]
def bool_sort #

[View source]
def finalize #

[View source]
def int_sort #

[View source]
def mk(v : Int32, ty : Sort) : Ast #

[View source]
def mk(v : UInt32, ty : Sort) : Ast #

[View source]
def mk(v : Int64, ty : Sort) : Ast #

[View source]
def mk(v : UInt64, ty : Sort) : Ast #

[View source]
def mk_add(a : Ast, b : Ast) #

[View source]
def mk_and(a : Ast, b : Ast) #

[View source]
def mk_bitvector_var(name : String, size : Int32) #

[View source]
def mk_bool_var(name : String) #

[View source]
def mk_distinct(a : Ast, b : Ast) #

[View source]
def mk_eq(a : Ast, b : Ast) #

[View source]
def mk_ge(a : Ast, b : Ast) #

[View source]
def mk_gt(a : Ast, b : Ast) #

[View source]
def mk_implies(a : Ast, b : Ast) #

[View source]
def mk_int_var(name : String) #

[View source]
def mk_le(a : Ast, b : Ast) #

[View source]
def mk_lt(a : Ast, b : Ast) #

[View source]
def mk_mul(a : Ast, b : Ast) #

[View source]
def mk_numeral(numeral : String, ty : Sort) : Ast #

[View source]
def mk_or(a : Ast, b : Ast) #

[View source]
def mk_real(num : Int32, den : Int32) : Ast #

[View source]
def mk_real_var(name : String) #

[View source]
def mk_sub(a : Ast, b : Ast) #

[View source]
def mk_xor(a : Ast, b : Ast) #

[View source]
def real_sort #

[View source]
def to_unsafe : LibZ3::Context #

[View source]