« first day (2683 days earlier)      last day (46 days later) » 

1:02 AM
@Theo Okay, finally got 0(0|11*00)*(ε|11*|11*0)
Note that the last union operation includes the empty string
 
do we need the empty string there?
 
Yes, in case the string doesn't end with 11* or 11*0
You can omit the epsilon if you'd like
 
Thanks @DavidReed :)
 
Or expand out the regex into 0(0|11*00)*|0(0|11*00)*11*|0(0|11*00)*11*0
 
ahh gotcha, thanks so much!
 
1:08 AM
Yeah, ended up having to design an FSM and do manual state reduction
 
@alan2here Have to warn you though...they can be mean. Typical comp-sci nerd I know everything narcissism
 
In computer-regex, it could also be written 0(0|1+00)*(1+0?)?
 
and im assuming this is much more difficult to get a regex for
either all the symbols in odd positions within w are
0's, or all the symbols in even positions within w are 0's, or both.
 
@Theo gimme a few minutes
Is w 0- or 1-indexed?
Although I guess it doesn't really matter
 
w $\in$ {0, 1}
 
1:22 AM
As in, is the first position odd or even
 
i'm not too sure what you mean by 0- or 1-indexed
first position is odd
 
Okay
This is definitely possible
 
@DavidReed Including relevant greek mythology?
 
@LegionMammal978 how?
 
@Theo I've already finished designing the state machine
 
1:33 AM
@LegionMammal978 i tried doing (01)*(10)*(0)* but that leaves for an empty string
 
@Theo An empty string should be allowed
But that particular regex matches stuff like 0110
 
@Narcissusjewel Intellectual narcissism. Greek would be closer to somatic narcissism I believe.
 
@DavidReed I was just trying to make myself relevant, you know how we are ;).
 
hahaha.Well now you're relevant! Tell me what motivated that name.
 
@LegionMammal978 how did you do it then?
 
1:43 AM
@Theo As I said, FSM state reduction
I have a regex now, currently simplifying it as much as I can
 
okay
 
@Theo Okay, got 0*|1|01(01)*(ε|0)|10(10)*(ε|1)
It has 4 cases: 0000..., 1, 0101..., and 1010...
 
is 1 a case
?
I thought 0 had to be in the string
whether in even position, odd, or both
 
Whoops, slightly misinterpreted the language specification
Just remove that case, then
Although I suppose "all even positions are 0" could be considered vacuously true due to there being no even positions
Same with the empty string (to remove that you'd change the first case to 00*)
 
00*|1|01(01)*(ε|0)|10(10)*
we'd end up with this then
 

« first day (2683 days earlier)      last day (46 days later) »