progs/app52.scala
changeset 436 9213b8298ca9
parent 415 4ae59fd3b174
equal deleted inserted replaced
435:e08431a78f66 436:9213b8298ca9
     3   case (s, ZERO) => ZERO
     3   case (s, ZERO) => ZERO
     4   case (s, ONE) => if (s == Nil) ONE else ZERO
     4   case (s, ONE) => if (s == Nil) ONE else ZERO
     5   case (s, CHAR(c)) => if (s == List(c)) ONE else 
     5   case (s, CHAR(c)) => if (s == List(c)) ONE else 
     6                        if (s == Nil) CHAR(c) else ZERO
     6                        if (s == Nil) CHAR(c) else ZERO
     7   case (s, ALT(r1, r2)) => ALT(ders2(s, r2), ders2(s, r2))
     7   case (s, ALT(r1, r2)) => ALT(ders2(s, r2), ders2(s, r2))
     8   case (c::s, r) => ders2(s, der(c, r).simp)
     8   case (c::s, r) => ders2(s, simp(der(c, r)))
     9 }
     9 }