public TermWithExplicitType(Term term, TypeIsa type) { Term = term; Type = type; }
public ArrowType(TypeIsa argType, TypeIsa resType) { ArgType = argType; ResType = resType; }
public R Visit(TypeIsa t) { return(t.Dispatch(this)); }
public static DefDecl CreateWithoutArg(string name, TypeIsa type, Term rhs) { return(new DefDecl(name, type, new Tuple <IList <Term>, Term>(new List <Term>(), rhs))); }
public DefDecl(string name, TypeIsa type, Tuple <IList <Term>, Term> equation) : base(name) { Type = type; Equation = equation; }
public FunDecl(string name, TypeIsa type, IList <Tuple <IList <Term>, Term> > equations) : base(name) { Type = type; Equations = equations; }