|
|
Line 1: |
Line 1: |
| {{Unreferenced|date=April 2009}}
| | The author is known as Irwin Wunder but it's not the most masucline name out there. Supervising is my occupation. Years ago we moved to North Dakota and I adore every day living here. One of the issues she enjoys most is to read comics and she'll be starting some thing else alongside with it.<br><br>My web-site [http://gcjcteam.org/index.php?mid=etc_video&document_srl=655020&sort_index=regdate&order_type=desc at home std testing] |
| | |
| '''Binary combinatory logic''' ('''BCL''') is a formulation of [[combinatory logic]] using only the symbols 0 and 1. BCL has applications in the theory of program-size complexity ([[Kolmogorov complexity]]).
| |
| | |
| ==Definition==
| |
| ===Syntax===
| |
| [[Backus-Naur form|Backus–Naur form]]:
| |
| * <tt> <term> ::= 00 | 01 | 1 <term> <term> </tt>
| |
| ===Semantics===
| |
| The [[denotational semantics]] of BCL may be specified as follows:
| |
| * <tt>[ 00 ] == ''K''</tt>
| |
| * <tt>[ 01 ] == ''S''</tt>
| |
| * <tt>[ 1 <term1> <term2> ] == ''('' [<term1>] [<term2>] '')'' </tt>
| |
| where "<tt>[...]</tt>" abbreviates "the meaning of <tt>...</tt>". Here <tt>''K''</tt> and <tt>''S''</tt> are the ''KS''-basis combinators, and <tt>''( )''</tt> is the ''application'' operation, of [[combinatory logic]]. (The prefix <tt>1</tt> corresponds to a left parenthesis, right parentheses being unnecessary for disambiguation.)
| |
| | |
| Thus there are four equivalent formulations of BCL, depending on the manner of encoding the triplet (K, S, left parenthesis). These are <tt>(00, 01, 1)</tt> (as in the present version), <tt>(01, 00, 1)</tt>, <tt>(10, 11, 0)</tt>, and <tt>(11, 10, 0)</tt>.
| |
| | |
| The [[operational semantics]] of BCL, apart from eta-reduction (which is not required for [[Turing-complete|Turing completeness]]), may be very compactly specified by the following [[rewriting]] rules for subterms of a given term, [[parsing]] from the left:
| |
| * <tt> 1100xy <math>\rightarrow</math> x </tt>
| |
| * <tt> 11101xyz <math>\rightarrow</math> 11xz1yz </tt>
| |
| where <tt>x</tt>, <tt>y</tt>, and <tt>z</tt> are arbitrary subterms. (Note, for example, that because parsing is from the left, <tt>10000</tt> is not a subterm of <tt>11010000</tt>.)
| |
| | |
| ==See also== | |
| * [[Iota and Jot]]
| |
| * [[Binary lambda calculus]]
| |
| | |
| ==External links==
| |
| * [http://homepages.cwi.nl/~tromp/cl/cl.html John's Lambda Calculus and Combinatory Logic Playground]
| |
| | |
| [[Category:Algorithmic information theory]]
| |
| [[Category:Combinatory logic]]
| |
The author is known as Irwin Wunder but it's not the most masucline name out there. Supervising is my occupation. Years ago we moved to North Dakota and I adore every day living here. One of the issues she enjoys most is to read comics and she'll be starting some thing else alongside with it.
My web-site at home std testing