Predicate logic for words

182 Views Asked by At

Let $\Sigma$ be an Alphabet. $\Sigma^*$ the set of finite words over $\Sigma$. We define a signature $S=({*/2,\emptyset)}$. Let $M_{\Sigma}=(\Sigma^*,I)$ be a structure over this signature. Let $I(*) $ be the formal operator of concatenation. for example $ab*ba=abba$

$a)$Give a formula $A$ that represents the empty String $\epsilon$ and uses a free variable $x$. Formally $M_{\Sigma}[A](\sigma)=1$ iff $\sigma(x)=\epsilon$

Here i said $\forall y(y*x=y)$

b)Give a formula $B$ with a free variable $y$ that has the meaning "length of 1" .Formally $M_{\Sigma}[B](\sigma)=1$ iff $\sigma(y)$has length 1

Here I said $\forall x \forall y (y=x*c) \to (\forall z((z*x=z) \lor (z*c=z))$

My idea was that a string of legnth one can only be concatenated by 2 strings if one of the strings is empty.

c)Let $\Sigma$ and $\Gamma$ be finite sets of letters with $|\Sigma| \gt |\Gamma| $. Give a Formula such that $M_{\Sigma}$ is fullfilled but $M_{\Gamma}$ is not.

Here i have not the sligthest Idea of what i could use. A tip would be nice.

Please can you take a look at my other answers too. And maybe there are easier solutions to it ?.

Thank you