1
$\begingroup$

What are the rules of regular expression arithmetics ?

For example: Let $\Sigma=\{0,1\}$

$1. 1+01=(\epsilon+0)1$.

$2. (\epsilon+00)^*=(00)^*$

  • 0
    What exactly is you question?2012-08-12
  • 0
    @martini - "What are the rules of regular expression arithmetics ?" in $\mathbb{R}$ for exmaple you have $ab+ac=a(b+c)$ and in the examples I gave there are cirtin rules for regular expression arithmetics as well...I ask about what those rules are (although I do understand that in $\mathbb{R}$ this was an axiom and in our case it can be proven)2012-08-12
  • 0
    Perhaps look into [Kleene algebras](http://en.wikipedia.org/wiki/Kleene_algebra).2012-08-12
  • 0
    What regular expression syntax are you using? In the RE syntaxes I know `+` is either an ordinary character, or means "one or more times the regular expression preceding it" (i.e. like `*`, but excluding the empty string). Here, it seems to mean something different (maybe "or")?2012-08-12
  • 0
    @celtschk: Belgi is clearly using it for OR; I’m more familiar with both $\mid$ and $\lor$ in this context, but I’ve also seen $+$ used.2012-08-12
  • 0
    See [Kleene algebras](https://en.wikipedia.org/wiki/Kleene_algebra).2012-08-12

1 Answers 1

1

Off the top of my head you have at least the following:

  1. $\epsilon\alpha=\alpha=\alpha\epsilon$.
  2. $\alpha+\beta=\beta+\alpha$.
  3. $\alpha+\alpha=\alpha$.
  4. $\alpha\beta+\alpha\gamma=\alpha(\beta+\gamma)$ and $\beta\alpha+\gamma\alpha=(\beta+\gamma)\alpha$.
  5. $(\epsilon+\alpha)^*=\epsilon+\alpha^*=\alpha^*$.
  6. $\epsilon^*=\epsilon$.

If your formalization includes $\varnothing$ (no string) distinct from $\epsilon$ (empty string), you have $\varnothing+\alpha=\alpha$.