Add some basic rewrites for regular expression intersection (#7629)
authorAndrew Reynolds <andrew.j.reynolds@gmail.com>
Fri, 12 Nov 2021 15:02:43 +0000 (09:02 -0600)
committerGitHub <noreply@github.com>
Fri, 12 Nov 2021 15:02:43 +0000 (15:02 +0000)
commit99e830f0dd0beb00f93ea04b819294cab5e35b9a
treeb92f1ea4182fb0c0a04d504f36c45fe1685ceecf
parentad340126a7adbb9840cca1d082c57b43995987a4
Add some basic rewrites for regular expression intersection (#7629)

Adds some basic rewrites for re.inter and re.union involving children of the form (str.to_re c) for constants c.

This is towards addressing bottlenecks for Zelkova benchmarks.
src/theory/strings/rewrites.cpp
src/theory/strings/rewrites.h
src/theory/strings/sequences_rewriter.cpp