C# 클래스 Microsoft.Automata.Z3.RankedAlphabet

Represents a definition of a datatype over a given set of ranked symbols and a given node sort.
파일 보기 프로젝트 열기: AutomataDotNet/Automata 1 사용 예제들

공개 프로퍼티들

프로퍼티 타입 설명
constructors Microsoft.Z3.FuncDecl[]
ranks int[]

공개 메소드들

메소드 설명
ChildVar ( int k ) : Expr

Gets the formal variable for the k'th child subtree.

ContainsConstructor ( FuncDecl symbol ) : bool

Returns true iff the constructor belongs to the alphabet.

ContainsConstructor ( string symbol ) : bool

Returns true iff the alphabet contains a constructor with the given name.

GetAttributeAccessor ( string symbol ) : FuncDecl

Gets the accessor of the node label for the given node symbol.

GetChildAccessor ( string symbol, int n ) : FuncDecl

Gets the accessor of the n'th child.

GetConstructor ( string symbol ) : FuncDecl

Gets the constructor for the given node symbol.

GetRank ( string symbol ) : int

Gets the number of children (subtrees) that a node with the given symbol has.

GetSymbols ( int rank ) : List
GetTester ( string symbol ) : FuncDecl

Gets the predicate for testing that its argument has the given node symbol.

MkAcceptorRule ( int state, string symbol ) : TreeRule

Make a new acceptor rule where k = lookahead.Length is the rank of the symbol with guard=true.

MkAcceptorRule ( int state, string symbol, Expr guard ) : TreeRule

Make a new acceptor rule where k = lookahead.Length is the rank of the symbol.

MkAcceptorRule ( int state, string symbol, Expr guard, int lookahead ) : TreeRule

Make a new acceptor rule where k = lookahead.Length is the rank of the symbol.

MkAcceptorRule ( int state, string symbol, int lookahead ) : TreeRule

Make a new acceptor rule where k = lookahead.Length is the rank of the symbol and the guard is true.

MkAttr ( ) : Expr

Make a an attribute term.

MkTrans ( RankedAlphabet outputAlphabet, int state, int child ) : Expr

Make an output term of applying the given state to the given child subtree.

MkTree ( FuncDecl f, Expr attribute ) : Expr

Make a tree with the given constructor, attribute, and subtrees.

MkTree ( string constructor, Expr attribute ) : Expr

Make a tree with the given constructor, attribute, and subtrees.

MkTreeAcceptor ( ) : TreeTransducer

Make a new tree acceptor. The initial state is the state of the first rule.

ToString ( ) : string

Returns the name of the alphabet sort.

this ( string constructorName ) : FuncDecl

Gets the constructor with the given name. Same as GetConstructor(constructorName).

비공개 메소드들

메소드 설명
EnumerateCombinedRules ( ConsList state_set, FuncDecl func, Func GetRules ) : ExprSet[]>>.IEnumerable
GetId ( string symbol ) : int
GetMaxStateId ( IEnumerable rules ) : int
MkAcceptorOutput ( FuncDecl f ) : Expr

Make an acceptor output term for the given symbol and states.

MkLangConj ( IEnumerable states, IEnumerable args ) : Expr

Makes the language acceptance condition for the given states and arguments. For example if states =[{},{q1},{q2,q3},{q2}] and args = [t0,t1,t2,t3] creates the conjunction (($lang(q1,t1) and $lang(q2,t2)) and $lang(q3,t2)) and $lang(q2,t3). Assumes that the enumerations have the same length.

RankedAlphabet ( TreeTheory tt, string symbols, int>.Dictionary idMap, Microsoft.Z3.Sort alphabetSort, Microsoft.Z3.Sort nodeSort, int ranks, FuncDecl constructors, FuncDecl accessors, FuncDecl testers, FuncDecl acceptor, Expr vars ) : System

메소드 상세

ChildVar() 공개 메소드

Gets the formal variable for the k'th child subtree.
public ChildVar ( int k ) : Expr
k int positive integer between 1 and MaxRank
리턴 Microsoft.Z3.Expr

ContainsConstructor() 공개 메소드

Returns true iff the constructor belongs to the alphabet.
public ContainsConstructor ( FuncDecl symbol ) : bool
symbol Microsoft.Z3.FuncDecl constructor
리턴 bool

ContainsConstructor() 공개 메소드

Returns true iff the alphabet contains a constructor with the given name.
public ContainsConstructor ( string symbol ) : bool
symbol string constructor name
리턴 bool

GetAttributeAccessor() 공개 메소드

Gets the accessor of the node label for the given node symbol.
public GetAttributeAccessor ( string symbol ) : FuncDecl
symbol string function symbol name
리턴 Microsoft.Z3.FuncDecl

GetChildAccessor() 공개 메소드

Gets the accessor of the n'th child.
public GetChildAccessor ( string symbol, int n ) : FuncDecl
symbol string function symbol name
n int must be an integer between 1 and GetChildRank(symbol)
리턴 Microsoft.Z3.FuncDecl

GetConstructor() 공개 메소드

Gets the constructor for the given node symbol.
public GetConstructor ( string symbol ) : FuncDecl
symbol string function symbol name
리턴 Microsoft.Z3.FuncDecl

GetRank() 공개 메소드

Gets the number of children (subtrees) that a node with the given symbol has.
public GetRank ( string symbol ) : int
symbol string function symbol name
리턴 int

GetSymbols() 공개 메소드

public GetSymbols ( int rank ) : List
rank int
리턴 List

GetTester() 공개 메소드

Gets the predicate for testing that its argument has the given node symbol.
public GetTester ( string symbol ) : FuncDecl
symbol string function symbol name
리턴 Microsoft.Z3.FuncDecl

MkAcceptorRule() 공개 메소드

Make a new acceptor rule where k = lookahead.Length is the rank of the symbol with guard=true.
public MkAcceptorRule ( int state, string symbol ) : TreeRule
state int top state of the rule
symbol string symbol of the alphabet
리턴 TreeRule

MkAcceptorRule() 공개 메소드

Make a new acceptor rule where k = lookahead.Length is the rank of the symbol.
public MkAcceptorRule ( int state, string symbol, Expr guard ) : TreeRule
state int top state of the rule
symbol string symbol of the alphabet
guard Microsoft.Z3.Expr attribute guard
리턴 TreeRule

MkAcceptorRule() 공개 메소드

Make a new acceptor rule where k = lookahead.Length is the rank of the symbol.
public MkAcceptorRule ( int state, string symbol, Expr guard, int lookahead ) : TreeRule
state int top state of the rule
symbol string symbol of the alphabet
guard Microsoft.Z3.Expr attribute guard
lookahead int bottom state sets of the rule
리턴 TreeRule

MkAcceptorRule() 공개 메소드

Make a new acceptor rule where k = lookahead.Length is the rank of the symbol and the guard is true.
public MkAcceptorRule ( int state, string symbol, int lookahead ) : TreeRule
state int top state of the rule
symbol string symbol of the alphabet
lookahead int bottom state sets of the rule (elements of lookahead may be null)
리턴 TreeRule

MkAttr() 공개 메소드

Make a an attribute term.
public MkAttr ( ) : Expr
리턴 Microsoft.Z3.Expr

MkTrans() 공개 메소드

Make an output term of applying the given state to the given child subtree.
public MkTrans ( RankedAlphabet outputAlphabet, int state, int child ) : Expr
outputAlphabet RankedAlphabet the output alphabet sort
state int the state from which the child is transduced
child int the accessor of the child, must be a positive integer between 1 and MaxRank
리턴 Microsoft.Z3.Expr

MkTree() 공개 메소드

Make a tree with the given constructor, attribute, and subtrees.
public MkTree ( FuncDecl f, Expr attribute ) : Expr
f Microsoft.Z3.FuncDecl
attribute Microsoft.Z3.Expr
리턴 Microsoft.Z3.Expr

MkTree() 공개 메소드

Make a tree with the given constructor, attribute, and subtrees.
public MkTree ( string constructor, Expr attribute ) : Expr
constructor string
attribute Microsoft.Z3.Expr
리턴 Microsoft.Z3.Expr

MkTreeAcceptor() 공개 메소드

Make a new tree acceptor. The initial state is the state of the first rule.
public MkTreeAcceptor ( ) : TreeTransducer
리턴 TreeTransducer

ToString() 공개 메소드

Returns the name of the alphabet sort.
public ToString ( ) : string
리턴 string

this() 공개 메소드

Gets the constructor with the given name. Same as GetConstructor(constructorName).
public this ( string constructorName ) : FuncDecl
constructorName string the name of the constructor
리턴 Microsoft.Z3.FuncDecl

프로퍼티 상세

constructors 공개적으로 프로퍼티

public FuncDecl[],Microsoft.Z3 constructors
리턴 Microsoft.Z3.FuncDecl[]

ranks 공개적으로 프로퍼티

public int[] ranks
리턴 int[]