progs/prove.scala
changeset 132 53e24ca037ce
parent 131 d35b2ee2e788
child 135 e78af5feb655
equal deleted inserted replaced
131:d35b2ee2e788 132:53e24ca037ce
   116 run (Set[Form](And(f1, f2)) |- And(f2, f1))
   116 run (Set[Form](And(f1, f2)) |- And(f2, f1))
   117 
   117 
   118 
   118 
   119 val Chr = "Christian"
   119 val Chr = "Christian"
   120 val HoD = "Peter"
   120 val HoD = "Peter"
   121 val Email = Pred("may_btain_email", List(Const(Chr)))
   121 val Email = Pred("may_obtain_email", List(Const(Chr)))
   122 val AtLib = Pred("is_at_library", List(Const(Chr)))
   122 val AtLib = Pred("is_at_library", List(Const(Chr)))
   123 val Chr_Staff = Pred("is_staff", List(Const(Chr)))
   123 val Chr_Staff = Pred("is_staff", List(Const(Chr)))
   124 
   124 
   125 val Policy_HoD = (HoD says Chr_Staff) -> Chr_Staff
   125 val Policy_HoD = (HoD says Chr_Staff) -> Chr_Staff
   126 val Policy_Lib = And(Chr_Staff, AtLib) -> Email
   126 val Policy_Lib = And(Chr_Staff, AtLib) -> Email
   127 val HoD_says = HoD says Chr_Staff
   127 val HoD_says = HoD says Chr_Staff
   128 
   128 
   129 run (Set[Form](AtLib, Policy_HoD, Policy_Lib, HoD_says) |- Email)
   129 run (Set[Form](AtLib, Policy_HoD, Policy_Lib) |- Email)
   130 
   130 
   131 
   131