Suppose I have the following StringReplace rule
StringReplace[st, {"a" -> "0", "OverBar[a]" -> "1", "b" -> "1",
"OverBar[b]" -> "0", "c" -> "0", "OverBar[c]" -> "1" ,
"d" -> "0", "OverBar[d]" -> "1", "e" -> "0", "OverBar[e]" -> "1" }]
Given an output string, is there some way to generate all strings which give this output?
For example
bcccc
, bcccd
, bccde
both give the string 10000
. Is there some way to find all of these inverses? For short examples, one could calculate by hand but when the string lengths get large and the number of rules get large this would not be effective. It also seems like it would be difficult to automate.
StringReplace[st, {"a" -> ""}]
yields"b"
. $\endgroup$