Attic/programs/judgement.scala
changeset 198 2ce98ee39990
equal deleted inserted replaced
197:9c968d0de9a0 198:2ce98ee39990
       
     1 abstract class Term
       
     2 case class Var(s: String) extends Term
       
     3 case class Consts(s: String) extends Term
       
     4 case class Fun(s: String, ts: List[Term]) extends Term
       
     5 
       
     6 abstract class Form
       
     7 case object True extends Form
       
     8 case object False extends Form
       
     9 case class And(f1: Form, f2: Form) extends Form
       
    10 case class Or(f1: Form, f2: Form) extends Form
       
    11 case class Imp(f1: Form, f2: Form) extends Form
       
    12 case class Neg(f: Form) extends Form
       
    13 case class Pred(s: String, ts: List[Term]) extends Form
       
    14 
       
    15 case class Judgement(Gamma: List[Form], F: Form) {
       
    16   def lhs = Gamma
       
    17   def rhs = F
       
    18 }