Rich AT EnglishLogicKernel DOT com
John F. Sowa wrote:
Alain Colmerauer, who implemented the first Prolog
designed it to support machine translation. It
is still widely
used to implement parsers and compilers. The
of parsing and generating can be implemented in pure
(i.e., without the procedural features).
PC> I'm still curious as to whether the conversion
> of a string of bits to or from Peano format
> representable by FOL axioms.
For practical purposes, Prolog systems would have some
predicates that convert a Prolog-style list, such as
to a bit pattern stored in the basic hardware formats.
But all those bit patterns of the hardware are
logic circuits (mostly NAND and NOR circuits, which
be easy to implement with transistors, but those
no different in principle from the more familiar AND,
NOT operators). Every level from the logic
circuits on up
can be simulated in Prolog.
It might sound like a lot of work to specify all of
just consider the following points:
1. For specifications that do not require the
features of Prolog, there is
a one-to-one mapping
between Prolog statements and
statements in pure FOL.
2. Complex logical operations are much easier
to specify in
Prolog than in C.
(Typically 10 lines of C are needed to
do the equivalent of 1 line
3. People routinely write C programs to
hardware and software
If anybody doubts these points, just consider those
of Prolog or CLIF that define add. Try writing
program in C -- i.e., represent each integer N by an
of the form S(S(S(0))) with N applications of S.
Shared Files: http://ontolog.cim3.net/file/
Community Wiki: http://ontolog.cim3.net/wiki/
To Post: mailto:ontolog-forum@xxxxxxxxxxxxxxxx