FOM: expr. power of syntax

Stephen Fenner fenner at cse.sc.edu
Thu Jul 18 17:05:48 EDT 2002


On Thu, 18 Jul 2002, Thomas Forster wrote:

> Yes, that's the easy bit.  The harrd bit is to find a formal way
> of saying something like: no language with the expressive power of
> propositional logic can be regular.  It's pretty clear that something
> like that must be true, but i'm not sure how to state it!
>
>

>From a programming languages perspective, assembly/machine languages
(which are regular, or can be idealized to be regular), are every bit as
expressive as higher-level programming languages, i.e., they are
"general-purpose"--able to compute any computable function.  This is clear
from the fact that compilers routinely translate high-level languages into
machine language.

For propositional logic, consider the regular language given by the
following rules (named regular expressions):

digit  = 0|1|2|3|4|5|6|7|8|9
number = {digit}{digit}*
var    = X{number}
neg    = ~{var}
literal= {var}|{neg}|true|false
conj   = {literal}&{literal} | {literal}
disj   = {conj}v{conj} | {conj}
rule   = {var}:={disj}
formula= {rule}*

[Here, "|" means union and "*" means Kleene closure and {name} means
substitute the regular expression previously bound to that name.]

The language is given by the last regular expression ({formula}).  Any
propositional formula is computably translatable into a string in this
language which preserves meaning and vice versa, given an appropriate
semantics on the latter.

Steve





More information about the FOM mailing list