| author | Christian Urban <christian.urban@kcl.ac.uk> | 
| Thu, 02 Nov 2023 13:53:37 +0000 | |
| changeset 471 | 31b81f20fd9a | 
| parent 430 | 4029552de5fc | 
| child 472 | fbff6f601370 | 
| permissions | -rw-r--r-- | 
| 403 | 1 | import M3._ | 
| 300 | 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) |