| author | Christian Urban <christian.urban@kcl.ac.uk> | 
| Sat, 29 Aug 2020 16:05:59 +0100 | |
| changeset 342 | 3779dd003077 | 
| parent 300 | be9900ba65ff | 
| permissions | -rw-r--r-- | 
| 300 | 1 | import CW9c._ | 
| 2 | ||
| 3 | val EVIL_urban = SEQ(STAR(STAR(CHAR('a'))), CHAR('b'))
 | |
| 4 | ||
| 5 | ||
| 6 | assert(simp(Iterator.iterate(ONE:Rexp)(r => SEQ(r, ONE | ONE)).drop(50).next) == ONE) | |
| 7 | assert(simp(Iterator.iterate(ONE:Rexp)(r => ALT(r, r)).drop(20).next) == ONE) | |
| 8 | assert(matcher(EVIL_urban, "a" * 1000000) == false) | |
| 9 | assert(matcher(EVIL_urban, "a" * 1000000 ++ "b") == true) |