SYMBOL INDEX (345 symbols across 23 files) FILE: Program.cs class Program (line 24) | class Program class Options (line 26) | class Options method Main (line 55) | static void Main(string[] args) method RunOptions (line 71) | static void RunOptions(Options opts) FILE: backend/BasicPath.cs class BasicPath (line 16) | class BasicPath method ObjectInvariant (line 28) | [ContractInvariantMethod] FILE: backend/CounterModel.cs class CounterModel (line 16) | class CounterModel method CounterModel (line 24) | public CounterModel(Dictionary assignments) method Print (line 31) | public void Print(TextWriter writer) FILE: backend/SMTSolver.cs class SMTSolver (line 20) | class SMTSolver method CheckValid (line 30) | public CounterModel? CheckValid(Expression expression) method definePredicate (line 38) | public void definePredicate(Predicate predicate) FILE: backend/Verifier.cs class Verifier (line 26) | class Verifier method Verifier (line 31) | public Verifier(TextWriter writer) method Apply (line 44) | public int Apply(IRMain cfg) FILE: backend/Z3Solver.cs class Z3Solver (line 21) | class Z3Solver method Z3Solver (line 27) | public Z3Solver() method CheckValid (line 35) | public CounterModel? CheckValid(Expression expression) method ExpressionToZ3Expr (line 63) | Expr ExpressionToZ3Expr(Expression e) method definePredicate (line 351) | public void definePredicate(Predicate predicate) FILE: exception/ParsingException.cs class ParsingException (line 18) | public class ParsingException : Exception method ParsingException (line 20) | public ParsingException() { } method ParsingException (line 21) | public ParsingException(string message) : base(message) { } method ParsingException (line 22) | public ParsingException(string message, Exception inner) : base(messag... method ParsingException (line 24) | public ParsingException([NotNull] ParserRuleContext context, string me... FILE: exception/ThrowingErrorListener.cs class ThrowingErrorListener (line 16) | public class ThrowingErrorListener : BaseErrorListener method SyntaxError (line 18) | public override void SyntaxError([NotNull] IRecognizer recognizer, [Nu... FILE: frontend/AnnoGenerator.cs class CFGGenerator (line 27) | partial class CFGGenerator : CMinorParserBaseVisitor method VisitAssertion (line 29) | public override Expression? VisitAssertion([NotNull] CMinorParser.Asse... method CalcPreconditionBlock (line 44) | PreconditionBlock method CalcLoopHeadBlock (line 60) | LoopHeadBlock CalcLoopHeadBlock([NotNull] CMinorParser.LoopAnnotContex... method CalcPostconditionBlock (line 78) | PostconditionBlock CalcPostconditionBlock([NotNull] CMinorParser.Ensur... FILE: frontend/CFGGenerator.cs class CFGGenerator (line 48) | partial class CFGGenerator : CMinorParserBaseVisitor method Apply (line 72) | public IRMain Apply([NotNull] CMinorParser.MainContext context) method VisitMain (line 164) | public override Expression? VisitMain([NotNull] CMinorParser.MainConte... method VisitFuncDef (line 171) | public override Expression? VisitFuncDef([NotNull] CMinorParser.FuncDe... method VisitStructDef (line 234) | public override Expression? VisitStructDef([NotNull] CMinorParser.Stru... method VisitPredDef (line 258) | public override Expression? VisitPredDef([NotNull] CMinorParser.PredDe... method CalcDefName (line 290) | string CalcDefName(ParserRuleContext context, ITerminalNode node) FILE: frontend/DeclGenerator.cs class CFGGenerator (line 17) | partial class CFGGenerator: CMinorParserBaseVisitor method VisitDecl (line 19) | public override Expression? VisitDecl([NotNull] CMinorParser.DeclConte... FILE: frontend/ExprGenerator.cs class CFGGenerator (line 19) | partial class CFGGenerator : CMinorParserBaseVisitor method VisitIdentExpr (line 21) | public override Expression VisitIdentExpr([NotNull] CMinorParser.Ident... method VisitConstExpr (line 27) | public override Expression VisitConstExpr([NotNull] CMinorParser.Const... method VisitCallExpr (line 32) | public override Expression? VisitCallExpr([NotNull] CMinorParser.CallE... method VisitParExpr (line 149) | public override Expression? VisitParExpr([NotNull] CMinorParser.ParExp... method VisitArrAccessExpr (line 154) | public override Expression VisitArrAccessExpr([NotNull] CMinorParser.A... method VisitMemExpr (line 180) | public override Expression VisitMemExpr([NotNull] CMinorParser.MemExpr... method VisitUnaryExpr (line 216) | public override Expression VisitUnaryExpr([NotNull] CMinorParser.Unary... method VisitMulExpr (line 238) | public override Expression VisitMulExpr([NotNull] CMinorParser.MulExpr... method VisitAddExpr (line 288) | public override Expression VisitAddExpr([NotNull] CMinorParser.AddExpr... method VisitOrdExpr (line 310) | public override Expression VisitOrdExpr([NotNull] CMinorParser.OrdExpr... method VisitEquExpr (line 323) | public override Expression VisitEquExpr([NotNull] CMinorParser.EquExpr... method VisitAndExpr (line 341) | public override Expression VisitAndExpr([NotNull] CMinorParser.AndExpr... method VisitOrExpr (line 349) | public override Expression VisitOrExpr([NotNull] CMinorParser.OrExprCo... method VisitConstant (line 357) | public override Expression VisitConstant([NotNull] CMinorParser.Consta... FILE: frontend/PredGenerator.cs class CFGGenerator (line 20) | partial class CFGGenerator : CMinorParserBaseVisitor method VisitTruePred (line 22) | public override Expression VisitTruePred([NotNull] CMinorParser.TruePr... method VisitFalsePred (line 27) | public override Expression VisitFalsePred([NotNull] CMinorParser.False... method VisitCmpPred (line 32) | public override Expression VisitCmpPred([NotNull] CMinorParser.CmpPred... method VisitCallPred (line 57) | public override Expression VisitCallPred([NotNull] CMinorParser.CallPr... method VisitParPred (line 95) | public override Expression? VisitParPred([NotNull] CMinorParser.ParPre... method VisitConPred (line 100) | public override Expression VisitConPred([NotNull] CMinorParser.ConPred... method VisitDisPred (line 108) | public override Expression VisitDisPred([NotNull] CMinorParser.DisPred... method VisitImpPred (line 116) | public override Expression VisitImpPred([NotNull] CMinorParser.ImpPred... method VisitIffPred (line 124) | public override Expression VisitIffPred([NotNull] CMinorParser.IffPred... method VisitNegPred (line 132) | public override Expression VisitNegPred([NotNull] CMinorParser.NegPred... method VisitXorPred (line 139) | public override Expression VisitXorPred([NotNull] CMinorParser.XorPred... method VisitLengthPred (line 147) | public override Expression VisitLengthPred([NotNull] CMinorParser.Leng... method VisitQuantiPred (line 159) | public override Expression VisitQuantiPred([NotNull] CMinorParser.Quan... FILE: frontend/StmtGenerator.cs class CFGGenerator (line 18) | partial class CFGGenerator : CMinorParserBaseVisitor method VisitExprStmt (line 20) | public override Expression? VisitExprStmt([NotNull] CMinorParser.ExprS... method VisitIfStmt (line 32) | public override Expression? VisitIfStmt([NotNull] CMinorParser.IfStmtC... method VisitWhileStmt (line 83) | public override Expression? VisitWhileStmt([NotNull] CMinorParser.Whil... method VisitForStmt (line 148) | public override Expression? VisitForStmt([NotNull] CMinorParser.ForStm... method VisitDoStmt (line 244) | public override Expression? VisitDoStmt([NotNull] CMinorParser.DoStmtC... method VisitBreakStmt (line 295) | public override Expression? VisitBreakStmt([NotNull] CMinorParser.Brea... method VisitContStmt (line 308) | public override Expression? VisitContStmt([NotNull] CMinorParser.ContS... method VisitReturnStmt (line 321) | public override Expression? VisitReturnStmt([NotNull] CMinorParser.Ret... method VisitBlockStmt (line 346) | public override Expression? VisitBlockStmt([NotNull] CMinorParser.Bloc... method VisitVarAssign (line 358) | public override Expression? VisitVarAssign([NotNull] CMinorParser.VarA... method VisitSubAssign (line 369) | public override Expression? VisitSubAssign([NotNull] CMinorParser.SubA... method VisitMemAssign (line 406) | public override Expression? VisitMemAssign([NotNull] CMinorParser.MemA... method Assign (line 438) | void Assign(LocalVariable lhsVariable, [NotNull] CMinorParser.ExprCont... FILE: frontend/Struct.cs class Struct (line 20) | class Struct method Struct (line 27) | public Struct(string name, SortedDictionary me... method Print (line 34) | public void Print(TextWriter writer) class StructType (line 44) | sealed class StructType : VarType method StructType (line 50) | private StructType(Struct structDefinition) method Get (line 55) | public static StructType Get(Struct structDefinition) method ToString (line 64) | public override string ToString() class StructVariable (line 71) | class StructVariable : LocalVariable method ObjectInvariant (line 75) | [ContractInvariantMethod] method StructVariable (line 81) | public StructVariable(StructType type, string name) FILE: frontend/TermGenerator.cs class CFGGenerator (line 18) | partial class CFGGenerator : CMinorParserBaseVisitor method VisitIdentTerm (line 20) | public override Expression VisitIdentTerm([NotNull] CMinorParser.Ident... method VisitResTerm (line 26) | public override Expression VisitResTerm([NotNull] CMinorParser.ResTerm... method VisitConstTerm (line 32) | public override Expression VisitConstTerm([NotNull] CMinorParser.Const... method VisitParArithTerm (line 37) | public override Expression? VisitParArithTerm([NotNull] CMinorParser.P... method VisitParTerm (line 42) | public override Expression? VisitParTerm([NotNull] CMinorParser.ParTer... method VisitArrAccessTerm (line 47) | public override Expression VisitArrAccessTerm([NotNull] CMinorParser.A... method VisitMemTerm (line 57) | public override Expression VisitMemTerm([NotNull] CMinorParser.MemTerm... method VisitUnaryTerm (line 93) | public override Expression VisitUnaryTerm([NotNull] CMinorParser.Unary... method VisitMulTerm (line 115) | public override Expression VisitMulTerm([NotNull] CMinorParser.MulTerm... method VisitAddTerm (line 152) | public override Expression VisitAddTerm([NotNull] CMinorParser.AddTerm... method VisitOrdTerm (line 165) | public override Expression VisitOrdTerm([NotNull] CMinorParser.OrdTerm... method VisitEquTerm (line 178) | public override Expression VisitEquTerm([NotNull] CMinorParser.EquTerm... method VisitAndTerm (line 191) | public override Expression VisitAndTerm([NotNull] CMinorParser.AndTerm... method VisitOrTerm (line 199) | public override Expression VisitOrTerm([NotNull] CMinorParser.OrTermCo... method VisitArrUpdTerm (line 207) | public override Expression VisitArrUpdTerm([NotNull] CMinorParser.ArrU... method VisitLogicConstant (line 247) | public override Expression VisitLogicConstant([NotNull] CMinorParser.L... FILE: frontend/Utils.cs class CFGGenerator (line 24) | partial class CFGGenerator : CMinorParserBaseVisitor method CalcType (line 26) | VarType CalcType(string type, bool isArray) method CalcVar (line 50) | LocalVariable CalcVar([NotNull] ParserRuleContext context, string name... method CalcLocalVar (line 89) | LocalVariable CalcLocalVar([NotNull] CMinorParser.LocalVarContext cont... method CalcParaVar (line 116) | LocalVariable CalcParaVar([NotNull] CMinorParser.ParaVarContext context) method CalcLogicParaVar (line 126) | LocalVariable CalcLogicParaVar([NotNull] CMinorParser.LogicParaVarCont... method CalcRetVar (line 136) | LocalVariable CalcRetVar([NotNull] CMinorParser.RetVarContext context) method TypeConfirm (line 145) | Expression TypeConfirm([NotNull] ParserRuleContext context, bool boolA... method FindVariable (line 163) | LocalVariable FindVariable([NotNull] ParserRuleContext context, string... method LocalVariableExists (line 175) | bool LocalVariableExists(string name) method NotNullConfirm (line 184) | Expression NotNullConfirm([NotNull] ParserRuleContext context) method CompressedExpression (line 198) | VariableExpression CompressedExpression(Expression expression, Func $"_BASIC#{number}"; class PostconditionBlock (line 97) | sealed class PostconditionBlock : Block method ObjectInvariant (line 104) | [ContractInvariantMethod] method Print (line 112) | public override void Print(TextWriter writer) method ToString (line 122) | public override string ToString() => $"_POSTCOND#{number}"; class HeadBlock (line 126) | abstract class HeadBlock : Block method HeadBlock (line 130) | public HeadBlock() { } method HeadBlock (line 131) | public HeadBlock(Function currentFunction, Block? predecessor) method PrintRankingFunction (line 134) | abstract protected void PrintRankingFunction(TextWriter writer); class PreconditionBlock (line 138) | sealed class PreconditionBlock : HeadBlock method ObjectInvariant (line 145) | [ContractInvariantMethod] method Print (line 155) | public override void Print(TextWriter writer) method PrintRankingFunction (line 167) | protected override void PrintRankingFunction(TextWriter writer) method ToString (line 179) | public override string ToString() => $"_PRECOND#{number}"; class LoopHeadBlock (line 183) | sealed class LoopHeadBlock : HeadBlock method LoopHeadBlock (line 192) | public LoopHeadBlock(Function currentFunction, Block? predecessor = null) method ObjectInvariant (line 195) | [ContractInvariantMethod] method Print (line 202) | public override void Print(TextWriter writer) method PrintRankingFunction (line 217) | protected override void PrintRankingFunction(TextWriter writer) method ToString (line 229) | public override string ToString() => $"_LOOPHEAD#{number}"; FILE: ir/Expression.cs class Expression (line 27) | abstract class Expression method Print (line 31) | public abstract void Print(TextWriter writer); method Substitute (line 33) | public abstract Expression Substitute(LocalVariable s, Expression t); method GetFreeVariables (line 35) | public abstract HashSet GetFreeVariables(); method ObjectInvariant (line 37) | [ContractInvariantMethod] class VariableExpression (line 49) | sealed class VariableExpression : Expression method VariableExpression (line 53) | public VariableExpression(LocalVariable variable) method Print (line 59) | public override void Print(TextWriter writer) method Substitute (line 64) | public override Expression Substitute(LocalVariable s, Expression t) method GetFreeVariables (line 77) | public override HashSet GetFreeVariables() class ConstantExpression (line 83) | abstract class ConstantExpression : Expression method Substitute (line 85) | public override Expression Substitute(LocalVariable s, Expression t) method GetFreeVariables (line 90) | public override HashSet GetFreeVariables() class IntConstantExpression (line 96) | sealed class IntConstantExpression : ConstantExpression method IntConstantExpression (line 100) | public IntConstantExpression(int constant) method Print (line 106) | public override void Print(TextWriter writer) class FloatConstantExpression (line 112) | sealed class FloatConstantExpression : ConstantExpression method FloatConstantExpression (line 116) | public FloatConstantExpression(float constant) method Print (line 122) | public override void Print(TextWriter writer) class BoolConstantExpression (line 128) | sealed class BoolConstantExpression : ConstantExpression method BoolConstantExpression (line 132) | public BoolConstantExpression(bool constant) method Print (line 138) | public override void Print(TextWriter writer) class FunctionCallExpression (line 147) | sealed class FunctionCallExpression method ObjectInvariant (line 152) | [ContractInvariantMethod] method Print (line 158) | public void Print(TextWriter writer) class ArrayAccessExpression (line 170) | sealed class ArrayAccessExpression : Expression method ArrayAccessExpression (line 175) | public ArrayAccessExpression(Expression array, Expression subscript) method Print (line 185) | public override void Print(TextWriter writer) method Substitute (line 193) | public override Expression Substitute(LocalVariable s, Expression t) method GetFreeVariables (line 198) | public override HashSet GetFreeVariables() class ArrayUpdateExpression (line 206) | sealed class ArrayUpdateExpression : Expression method ArrayUpdateExpression (line 216) | public ArrayUpdateExpression(Expression array, Expression subscript, E... method Print (line 230) | public override void Print(TextWriter writer) method Substitute (line 240) | public override Expression Substitute(LocalVariable s, Expression t) method GetFreeVariables (line 257) | public override HashSet GetFreeVariables() class ITEExpression (line 266) | sealed class ITEExpression : Expression method ITEExpression (line 271) | public ITEExpression(Expression cond, Expression thenExpr, Expression ... method Print (line 282) | public override void Print(TextWriter writer) method Substitute (line 291) | public override Expression Substitute(LocalVariable s, Expression t) method GetFreeVariables (line 299) | public override HashSet GetFreeVariables() class UnaryExpression (line 308) | abstract class UnaryExpression : Expression method GetFreeVariables (line 312) | public override HashSet GetFreeVariables() method Substitute (line 317) | public override Expression Substitute(LocalVariable s, Expression t) class NotExpression (line 328) | sealed class NotExpression : UnaryExpression method NotExpression (line 330) | public NotExpression(Expression expression) method Print (line 336) | public override void Print(TextWriter writer) class NegExpression (line 343) | sealed class NegExpression : UnaryExpression method NegExpression (line 345) | public NegExpression(Expression expression) method Print (line 351) | public override void Print(TextWriter writer) class BinaryExpression (line 358) | abstract class BinaryExpression : Expression method Print (line 364) | public override void Print(TextWriter writer) method Substitute (line 374) | public override Expression Substitute(LocalVariable s, Expression t) method GetFreeVariables (line 385) | public override HashSet GetFreeVariables() method FromOp (line 392) | public static BinaryExpression FromOp(string op, Expression le, Expres... class MultiExpression (line 408) | sealed class MultiExpression : BinaryExpression method GetOperator (line 410) | public static string GetOperator() => "*"; method MultiExpression (line 412) | public MultiExpression(Expression le, Expression re) class DivExpression (line 421) | sealed class DivExpression : BinaryExpression method GetOperator (line 423) | public static string GetOperator() => "/"; method DivExpression (line 425) | public DivExpression(Expression le, Expression re) class ModExpression (line 434) | sealed class ModExpression : BinaryExpression method GetOperator (line 436) | public static string GetOperator() => "%"; method ModExpression (line 438) | public ModExpression(Expression le, Expression re) class AddExpression (line 447) | sealed class AddExpression : BinaryExpression method GetOperator (line 449) | public static string GetOperator() => "+"; method AddExpression (line 451) | public AddExpression(Expression le, Expression re) class SubExpression (line 460) | sealed class SubExpression : BinaryExpression method GetOperator (line 462) | public static string GetOperator() => "-"; method SubExpression (line 464) | public SubExpression(Expression le, Expression re) class LTExpression (line 473) | sealed class LTExpression : BinaryExpression method GetOperator (line 475) | public static string GetOperator() => "<"; method LTExpression (line 477) | public LTExpression(Expression le, Expression re) class LEExpression (line 486) | sealed class LEExpression : BinaryExpression method GetOperator (line 488) | public static string GetOperator() => "<="; method LEExpression (line 490) | public LEExpression(Expression le, Expression re) class GTExpression (line 499) | sealed class GTExpression : BinaryExpression method GetOperator (line 501) | public static string GetOperator() => ">"; method GTExpression (line 503) | public GTExpression(Expression le, Expression re) class GEExpression (line 512) | sealed class GEExpression : BinaryExpression method GetOperator (line 514) | public static string GetOperator() => ">="; method GEExpression (line 516) | public GEExpression(Expression le, Expression re) class EQExpression (line 525) | sealed class EQExpression : BinaryExpression method GetOperator (line 527) | public static string GetOperator() => "=="; method EQExpression (line 529) | public EQExpression(Expression le, Expression re) class NEExpression (line 538) | sealed class NEExpression : BinaryExpression method GetOperator (line 540) | public static string GetOperator() => "!="; method NEExpression (line 542) | public NEExpression(Expression le, Expression re) class AndExpression (line 551) | sealed class AndExpression : BinaryExpression method GetOperator (line 553) | public static string GetOperator() => "&&"; method AndExpression (line 555) | public AndExpression(Expression le, Expression re) class OrExpression (line 564) | sealed class OrExpression : BinaryExpression method GetOperator (line 566) | public static string GetOperator() => "||"; method OrExpression (line 568) | public OrExpression(Expression le, Expression re) class LengthExpression (line 577) | sealed class LengthExpression : UnaryExpression method ObjectInvariant (line 579) | [ContractInvariantMethod] method LengthExpression (line 586) | public LengthExpression(Expression expression) method Print (line 593) | public override void Print(TextWriter writer) method Substitute (line 600) | public override Expression Substitute(LocalVariable s, Expression t) class QuantifiedExpression (line 626) | abstract class QuantifiedExpression : Expression method QuantifiedExpression (line 632) | public QuantifiedExpression(Dictionary var... method Print (line 639) | public override void Print(TextWriter writer) method GetQuantifier (line 654) | protected abstract string GetQuantifier(); method Substitute (line 656) | public override Expression Substitute(LocalVariable s, Expression t) method GetFreeVariables (line 674) | public override HashSet GetFreeVariables() class ForallQuantifiedExpression (line 680) | sealed class ForallQuantifiedExpression : QuantifiedExpression method ForallQuantifiedExpression (line 682) | public ForallQuantifiedExpression(Dictionary "forall"; class ExistsQuantifiedExpression (line 687) | sealed class ExistsQuantifiedExpression : QuantifiedExpression method ExistsQuantifiedExpression (line 689) | public ExistsQuantifiedExpression(Dictionary "exists"; class ImplicationExpression (line 694) | sealed class ImplicationExpression : BinaryExpression method GetOperator (line 696) | public static string GetOperator() => "==>"; method ImplicationExpression (line 698) | public ImplicationExpression(Expression le, Expression re) class IffExpression (line 707) | sealed class IffExpression : BinaryExpression method GetOperator (line 709) | public static string GetOperator() => "<==>"; method IffExpression (line 711) | public IffExpression(Expression le, Expression re) class XorExpression (line 720) | sealed class XorExpression : BinaryExpression method GetOperator (line 722) | public static string GetOperator() => "^^"; method XorExpression (line 724) | public XorExpression(Expression le, Expression re) class PredicateCallExpression (line 733) | sealed class PredicateCallExpression : Expression method PredicateCallExpression (line 738) | public PredicateCallExpression(Predicate predicate, List a... method ObjectInvariant (line 745) | [ContractInvariantMethod] method Print (line 751) | public override void Print(TextWriter writer) method Substitute (line 762) | public override Expression Substitute(LocalVariable s, Expression t) method GetFreeVariables (line 771) | public override HashSet GetFreeVariables() FILE: ir/Statement.cs class Statement (line 31) | abstract class Statement method Statement (line 38) | public Statement() method Print (line 44) | public abstract void Print(TextWriter writer); class AssignStatement (line 47) | abstract class AssignStatement : Statement class VariableAssignStatement (line 54) | sealed class VariableAssignStatement : AssignStatement method ObjectInvariant (line 58) | [ContractInvariantMethod] method Print (line 65) | public override void Print(TextWriter writer) class SubscriptAssignStatement (line 73) | sealed class SubscriptAssignStatement : AssignStatement method ObjectInvariant (line 78) | [ContractInvariantMethod] method Print (line 85) | public override void Print(TextWriter writer) class FunctionCallStatement (line 95) | sealed class FunctionCallStatement : Statement method Print (line 100) | public override void Print(TextWriter writer) class AssertStatement (line 116) | sealed class AssertStatement : Statement method Print (line 120) | public override void Print(TextWriter writer) class AssumeStatement (line 128) | sealed class AssumeStatement : Statement method Print (line 132) | public override void Print(TextWriter writer) FILE: ir/TopLevel.cs class IRMain (line 18) | class IRMain method Print (line 23) | public void Print(TextWriter writer) class Function (line 44) | class Function method Print (line 65) | public void Print(TextWriter writer) class Predicate (line 87) | class Predicate method Print (line 97) | public void Print(TextWriter writer) FILE: ir/Type.cs class Type (line 32) | abstract class Type { } class VarType (line 34) | abstract class VarType : Type { } class AtomicType (line 38) | abstract class AtomicType : VarType method FromString (line 40) | public static AtomicType FromString(string s) class IntType (line 64) | sealed class IntType : AtomicType method IntType (line 68) | private IntType() { } method Get (line 70) | public static IntType Get() method ToString (line 75) | public override string ToString() class FloatType (line 81) | sealed class FloatType : AtomicType method FloatType (line 85) | private FloatType() { } method Get (line 87) | public static FloatType Get() method ToString (line 92) | public override string ToString() class BoolType (line 98) | sealed class BoolType : AtomicType method BoolType (line 102) | private BoolType() { } method Get (line 104) | public static BoolType Get() method ToString (line 109) | public override string ToString() class ArrayType (line 115) | sealed class ArrayType : VarType method ArrayType (line 123) | private ArrayType(AtomicType atomicType) method Get (line 128) | public static ArrayType Get(AtomicType atomicType) method ToString (line 145) | public override string ToString() class FunType (line 151) | class FunType : Type method FunType (line 158) | private FunType(List returnTypes, List paraTypes) method Get (line 164) | public static FunType Get(List returnTypes, List par... method ToString (line 192) | public override string ToString() class PredType (line 216) | sealed class PredType : Type method PredType (line 222) | private PredType(List paraTypes) method Get (line 227) | public static PredType Get(List paraTypes) method ToString (line 249) | public override string ToString() FILE: ir/Variable.cs class Variable (line 18) | abstract class Variable class LocalVariable (line 25) | class LocalVariable : Variable { } class ArrayVariable (line 27) | class ArrayVariable : LocalVariable class QuantifiedVariable (line 33) | sealed class QuantifiedVariable : LocalVariable { } class MemberVariable (line 37) | sealed class MemberVariable : Variable { }