Z3
src
api
dotnet
RelationSort.cs
Go to the documentation of this file.
1
/*++
2
Copyright (c) 2012 Microsoft Corporation
3
4
Module Name:
5
6
RelationSort.cs
7
8
Abstract:
9
10
Z3 Managed API: Relation Sorts
11
12
Author:
13
14
Christoph Wintersteiger (cwinter) 2012-11-23
15
16
Notes:
17
18
--*/
19
20
using
System
;
21
using
System
.Diagnostics.Contracts;
22
23
namespace
Microsoft
.Z3
24
{
28
[ContractVerification(
true
)]
29
public
class
RelationSort
:
Sort
30
{
34
public
uint Arity
35
{
36
get
{
return
Native
.
Z3_get_relation_arity
(
Context
.nCtx, NativeObject); }
37
}
38
42
public
Sort
[] ColumnSorts
43
{
44
get
45
{
46
Contract.Ensures(Contract.Result<
Sort
[]>() != null);
47
48
if
(m_columnSorts != null)
49
return
m_columnSorts;
50
51
uint n = Arity;
52
Sort
[] res =
new
Sort
[n];
53
for
(uint i = 0; i < n; i++)
54
res[i] =
Sort
.Create(
Context
,
Native
.
Z3_get_relation_column
(
Context
.nCtx, NativeObject, i));
55
return
res;
56
}
57
}
58
59
#region Internal
60
private
Sort
[] m_columnSorts = null;
61
62
internal
RelationSort
(
Context
ctx, IntPtr obj)
63
: base(ctx, obj)
64
{
65
Contract.Requires(ctx != null);
66
}
67
#endregion
68
}
69
}
Microsoft.Z3.Native.Z3_get_relation_arity
static uint Z3_get_relation_arity(Z3_context a0, Z3_sort a1)
Definition:
Native.cs:3334
System
using System
Definition:
InterpolationContext.cs:7
Microsoft.Z3.Native
Definition:
Native.cs:40
System
Microsoft
Microsoft.Z3.Native.Z3_get_relation_column
static Z3_sort Z3_get_relation_column(Z3_context a0, Z3_sort a1, uint a2)
Definition:
Native.cs:3342
Microsoft.Z3.Context
The main interaction with Z3 happens via the Context.
Definition:
Context.cs:31
Microsoft.Z3.Sort
The Sort class implements type information for ASTs.
Definition:
Sort.cs:29
Microsoft.Z3.RelationSort
Relation sorts.
Definition:
RelationSort.cs:29
Generated on Tue Jul 19 2016 21:26:48 for Z3 by
1.8.11