The following claim from p246 of TuringrCOs seminal paper On ComputableNumbers is a fallacy:
/the problem of enumerating computable sequences is equivalent to theproblem of finding out whether a given number is the D.N of a circle-
For any given computable sequence, there are _infinite_ circle-freemachines which compute that particular sequence. Not only can various
The problem of enumerating computable sequences, however, onlydepends on successfully identifying _one_ circle-free machine that
The problem of enumerating computable sequences is therefore _not_actually equivalent to a _general process_ of enumerating circle-free machines, as there is no need to identify all circle-free machines which compute any given computable sequence
Said problem is only equivalent to a _limited process_ of enumeratingcircle-free machines. The machine which identifies circle-free machines
Because of this fallacy, the proof found on the following p247, wherean ill-defined machine EYou (which attempts and fails to compute the
Concerning this boring nonsense:
https://book.simply-logical.space/src/text/2_part_ii/5.3.html#
Funny idea that anybody would be interested just now in
the year 2025 in things like teaching breadth first
search versus depth first search, or even be rCLmystifiedrCY
by such stuff. Its extremly trivial stuff:
Insert your favorite tree traversal pictures here.
Its even not artificial intelligence neither has anything
to do with mathematical logic, rather belongs to computer
science and discrete mathematics which you have in
1st year university
courses, making it moot to call it rCLsimply logicalrCY. It
reminds me of the idea of teaching how wax candles work
to dumb down students, when just light bulbs have been
invented. If this is the outcome
of the Prolog Education Group 2.0, then good night.
Hi,
Somebody just changed the Vanilla Prolog
meta interpreter from:
solve(true) :- !.
solve((A,B)) :- !, solve(A), solve(B).
solve(H) :- clause(H, B), solve(B).
Into a cycle checking interpreter. It makes
certain Datalog programs and queries complete,
but it doesn't make Horn clauses complete:
solve(A) :- solve(A, []).
solve(true, _) :- !.
solve((A,B), L) :- !, solve(A, L), solve(B, L).
solve(A, L) :- member(B, L), A =@= B, !, fail.
solve(H, L) :- clause(H, B), solve(B, [H|L]).
Bye
P.S.: Here is a proof for Datalog:
Since Datalog has only constants and variables,
no function symbols at all, there are only finitely
many literals at runtime modulo (=@=)/2.
Q.E.D.
dart200 schrieb:
The following claim from p246 of TuringrCOs seminal paper On ComputableNumbers is a fallacy:
/the problem of enumerating computable sequences is equivalent to theproblem of finding out whether a given number is the D.N of a circle-
free machine, and we have no general process for doing this in a finite number of steps/
For any given computable sequence, there are _infinite_ circle-freemachines which compute that particular sequence. Not only can various machines differ significantly in the specific steps to produce the same output, machines can be changed in superficial ways that do not
meaningfully affect the steps of computation, akin to modern no-op statements or unreachable code
The problem of enumerating computable sequences, however, onlydepends on successfully identifying _one_ circle-free machine that
computes any given computable sequences. While identifying more than one
can certainly be done, it is _not_ a requirement for enumerating
computable sequences, as _one_ machine computing a sequence /suffices to output any and all digits of that sequence/
The problem of enumerating computable sequences is therefore _not_actually equivalent to a _general process_ of enumerating circle-free machines, as there is no need to identify all circle-free machines which compute any given computable sequence
Said problem is only equivalent to a _limited process_ of enumeratingcircle-free machines. The machine which identifies circle-free machines
only needs the limited power of determining _at least one_ circle-free machine for any given computable sequence, _not all_ machines for any
given computable sequence
Because of this fallacy, the proof found on the following p247, wherean ill-defined machine EYou (which attempts and fails to compute the
direct diagonal +#rCO) is found to be undecidable in respect to circle-free decider EYoo; does not then prove an impossibility for enumerating computable sequences. As the problem of enumerating /all circle-free machines/ is _not_ equivalent to that of enumerating /just computable sequences/
Mild Shock schrieb:
Concerning this boring nonsense:
https://book.simply-logical.space/src/text/2_part_ii/5.3.html#
Funny idea that anybody would be interested just now in
the year 2025 in things like teaching breadth first
search versus depth first search, or even be rCLmystifiedrCY
by such stuff. Its extremly trivial stuff:
Insert your favorite tree traversal pictures here.
Its even not artificial intelligence neither has anything
to do with mathematical logic, rather belongs to computer
science and discrete mathematics which you have in
1st year university
courses, making it moot to call it rCLsimply logicalrCY. It
reminds me of the idea of teaching how wax candles work
to dumb down students, when just light bulbs have been
invented. If this is the outcome
of the Prolog Education Group 2.0, then good night.
Hi,--- Synchronet 3.22a-Linux NewsLink 1.2
pi-WAM is a nice challenge, since its aim is to go
even blow the instruction set of SWI-Prolog,
while only using a Hack variant as instruction
stream. But what is Hack? Well Hack seems to be
the missing legacy of Niclaus Wirths PL0. The
Hack (machine .asm) and Jack (highlevel compiler
generating .vm which can be converted to .asm)
combo makes even the famous Crafting Interpreters
/Lox by Bob Nystrom redundant:
Nand to Tetris courses are taught at 400+
universities, high schools, and bootcamps. The
students who take them range from high
schoolers to Ph.D. students to
https://www.nand2tetris.org/
But digging deaper in Hack, it has no functions
pointers so objects don't use virtual tables.
But what will pi-WAM need and that is not yet
in Hack? Given that my pi-WAM doesn't want a stack
nor a choice point lists? Currently there is the
idea to add a computed goto and that it can
cover a more lightweight C_OR as known from
SWI-Prolog, that would have the C_OR branches
maybe restricted to have no outside
clause calls? Lets see. Not yet sure.
Bye
Hi,
So the idea is to cover backtracking without
stack and choice points, only with registers.
So at the compute goto will use an instruction
that stores the PC target into a register,
a new instruction for Hack:
-a-a REG = PC + REL
And then the jump will be, again a new
instruction for Hack:
-a-a PC = REG
If we squeeze the lemon and compile as much
with that, we will only find that it breaks for
calling recursive predicates that can use
arbitary registers and choice points. But we
could maybe add stack and choice point as an
after match, instead of the classical WAM design
that starts with stack and choice points!
Bye
Mild Shock schrieb:
Hi,
pi-WAM is a nice challenge, since its aim is to go
even blow the instruction set of SWI-Prolog,
while only using a Hack variant as instruction
stream. But what is Hack? Well Hack seems to be
the missing legacy of Niclaus Wirths PL0. The
Hack (machine .asm) and Jack (highlevel compiler
generating .vm which can be converted to .asm)
combo makes even the famous Crafting Interpreters
/Lox by Bob Nystrom redundant:
Nand to Tetris courses are taught at 400+
universities, high schools, and bootcamps. The
students who take them range from high
schoolers to Ph.D. students to
https://www.nand2tetris.org/
But digging deaper in Hack, it has no functions
pointers so objects don't use virtual tables.
But what will pi-WAM need and that is not yet
in Hack? Given that my pi-WAM doesn't want a stack
nor a choice point lists? Currently there is the
idea to add a computed goto and that it can
cover a more lightweight C_OR as known from
SWI-Prolog, that would have the C_OR branches
maybe restricted to have no outside
clause calls? Lets see. Not yet sure.
Bye
Hi,
Maybe I should write a blog post, titled
Introduction to AI Accelerator Prolog:
- specialized jobs -C-WAM (currently integerish stuff)
- -C-WAM uses no atomics, only comms
- -C-WAM uses warp, 30-40% more speed
- -C-WAM runs on GPU and CPU
- -C-WAM runs from within JavaScript, Python and Java
Feels like reinventing FGCS concurrent
logic programming.
LoL
Bye
Mild Shock schrieb:
Hi,
So the idea is to cover backtracking without
stack and choice points, only with registers.
So at the compute goto will use an instruction
that stores the PC target into a register,
a new instruction for Hack:
-a-a-a REG = PC + REL
And then the jump will be, again a new
instruction for Hack:
-a-a-a PC = REG
If we squeeze the lemon and compile as much
with that, we will only find that it breaks for
calling recursive predicates that can use
arbitary registers and choice points. But we
could maybe add stack and choice point as an
after match, instead of the classical WAM design
that starts with stack and choice points!
Bye
Mild Shock schrieb:
Hi,
pi-WAM is a nice challenge, since its aim is to go
even blow the instruction set of SWI-Prolog,
while only using a Hack variant as instruction
stream. But what is Hack? Well Hack seems to be
the missing legacy of Niclaus Wirths PL0. The
Hack (machine .asm) and Jack (highlevel compiler
generating .vm which can be converted to .asm)
combo makes even the famous Crafting Interpreters
/Lox by Bob Nystrom redundant:
Nand to Tetris courses are taught at 400+
universities, high schools, and bootcamps. The
students who take them range from high
schoolers to Ph.D. students to
https://www.nand2tetris.org/
But digging deaper in Hack, it has no functions
pointers so objects don't use virtual tables.
But what will pi-WAM need and that is not yet
in Hack? Given that my pi-WAM doesn't want a stack
nor a choice point lists? Currently there is the
idea to add a computed goto and that it can
cover a more lightweight C_OR as known from
SWI-Prolog, that would have the C_OR branches
maybe restricted to have no outside
clause calls? Lets see. Not yet sure.
Bye
On 7/17/2026 2:16 AM, Mild Shock wrote:
Hi,
Maybe I should write a blog post, titled
Introduction to AI Accelerator Prolog:
- specialized jobs -C-WAM (currently integerish stuff)
- -C-WAM uses no atomics, only comms
- -C-WAM uses warp, 30-40% more speed
- -C-WAM runs on GPU and CPU
- -C-WAM runs from within JavaScript, Python and Java
[...]
No atomic fetch-and-add?
Hi,
The pi in pi-WAM refers to pi-calculus.
pi-calculus has not atomic(i32).
The -C-calculus is a universal model of computation.
This was first observed by Milner in his paper
"Functions as Processes",[10] in which he presents
two encodings of the lambda-calculus in the -C-calculus. https://en.wikipedia.org/wiki/%CE%A0-calculus
LoL
Bye
Chris M. Thomasson schrieb:
On 7/17/2026 2:16 AM, Mild Shock wrote:
Hi,
Maybe I should write a blog post, titled
Introduction to AI Accelerator Prolog:
- specialized jobs -C-WAM (currently integerish stuff)
- -C-WAM uses no atomics, only comms
- -C-WAM uses warp, 30-40% more speed
- -C-WAM runs on GPU and CPU
- -C-WAM runs from within JavaScript, Python and Java
[...]
No atomic fetch-and-add?
The -C-calculus is a universal model of computation.
This was first observed by Milner in his paper
"Functions as Processes",[10] in which he presents
two encodings of the lambda-calculus in the -C-calculus. https://en.wikipedia.org/wiki/%CE%A0-calculus
Of course the lambda-calculus and pi-calculus
are great things for models of types and communicating
sequential processes.
Roberto di Cosmo has a great book on types,
and more than one.
Hi,
Milners fickle() is here:
Functions as processes
https://inria.hal.science/inria-00075405
After Theorem 7.7:
So in P we construct a fickle rCyfunctionrCO which
behaves differently on successive calls.
Here is a pi-WAM run in Dogelog Player, using the emulator:
Dogelog Spieler 2.2.4, Oracle Corporation, Java 26.0.1
(c) 1985-2026, XLOG Technologies AG, Schweiz
?- ensure_loaded(library(edge/brainfog)).
true.
?- emulate((between(1,2,Y),in(X),out(Y))).
: 0
1
: 0
2
fail.
The emulator is portable, can be run every Prolog
system. But it is only 1 process. So its better
to use the n process backends for CPU or GPU.
Which are less portable, not anymore pure Prolog,
a great deal of thread start and join infrastructure
as well, and a native Hack VM.
The comms across process is not yet implemented.
But the in/1 and out/1 instructions are already
there. But they currently go to stdin/stdout.
Bye
Mild Shock schrieb:
Hi,
The pi in pi-WAM refers to pi-calculus.
pi-calculus has not atomic(i32).
The -C-calculus is a universal model of computation.
This was first observed by Milner in his paper
"Functions as Processes",[10] in which he presents
two encodings of the lambda-calculus in the -C-calculus.
https://en.wikipedia.org/wiki/%CE%A0-calculus
LoL
Bye
Chris M. Thomasson schrieb:
On 7/17/2026 2:16 AM, Mild Shock wrote:
Hi,
Maybe I should write a blog post, titled
Introduction to AI Accelerator Prolog:
- specialized jobs -C-WAM (currently integerish stuff)
- -C-WAM uses no atomics, only comms
- -C-WAM uses warp, 30-40% more speed
- -C-WAM runs on GPU and CPU
- -C-WAM runs from within JavaScript, Python and Java
[...]
No atomic fetch-and-add?
Lastly--there is the Church-Turing-thesis itself.
I cannot imagine what form a proof could have. But at
least a refutation is conceivable, if extremely far-fetched.
In 1935rCo36,[7] Alonzo Church formalized thehttps://en.wikipedia.org/wiki/Church%E2%80%93Turing_thesis
concept of effectively calculable functions by proposing
that they are general recursive functions, or,
equivalently, ++-definable functions.
Hi,
Mild Shock schrieb:
The -C-calculus is a universal model of computation.
This was first observed by Milner in his paper
"Functions as Processes",[10] in which he presents
two encodings of the lambda-calculus in the -C-calculus. https://en.wikipedia.org/wiki/%CE%A0-calculus
Ross Finlayson schrieb:
Of course the lambda-calculus and pi-calculus
are great things for models of types and communicating
sequential processes.
Roberto di Cosmo has a great book on types,
and more than one.
https://books.google.com/books/about/Isomorphisms_of_Types.html?id=cdJZRjIxavwC
When a 1970s paper claims a relation ship between
pi-calculus and lambda calculus, then both calculi
refer to a typeless calculi.
Types are a later invention. The original lambda
calculus was typeless. Church encodings came later,
but for example the Church Turing hypotheses is
formulated along typeless lambda calculus.
Bye
P.S.: Prolog is also typeless. I do not intend to
add any types to pi-WAM either.
Mild Shock schrieb:
Hi,
Milners fickle() is here:
Functions as processes
https://inria.hal.science/inria-00075405
After Theorem 7.7:
So in P we construct a fickle rCyfunctionrCO which
behaves differently on successive calls.
Here is a pi-WAM run in Dogelog Player, using the emulator:
Dogelog Spieler 2.2.4, Oracle Corporation, Java 26.0.1
(c) 1985-2026, XLOG Technologies AG, Schweiz
?- ensure_loaded(library(edge/brainfog)).
true.
?- emulate((between(1,2,Y),in(X),out(Y))).
: 0
1
: 0
2
fail.
The emulator is portable, can be run every Prolog
system. But it is only 1 process. So its better
to use the n process backends for CPU or GPU.
Which are less portable, not anymore pure Prolog,
a great deal of thread start and join infrastructure
as well, and a native Hack VM.
The comms across process is not yet implemented.
But the in/1 and out/1 instructions are already
there. But they currently go to stdin/stdout.
Bye
Mild Shock schrieb:
Hi,
The pi in pi-WAM refers to pi-calculus.
pi-calculus has not atomic(i32).
The -C-calculus is a universal model of computation.
This was first observed by Milner in his paper
"Functions as Processes",[10] in which he presents
two encodings of the lambda-calculus in the -C-calculus.
https://en.wikipedia.org/wiki/%CE%A0-calculus
LoL
Bye
Chris M. Thomasson schrieb:
On 7/17/2026 2:16 AM, Mild Shock wrote:
Hi,
Maybe I should write a blog post, titled
Introduction to AI Accelerator Prolog:
- specialized jobs -C-WAM (currently integerish stuff)
- -C-WAM uses no atomics, only comms
- -C-WAM uses warp, 30-40% more speed
- -C-WAM runs on GPU and CPU
- -C-WAM runs from within JavaScript, Python and Java
[...]
No atomic fetch-and-add?
Hi,
Maybe I should write a blog post, titled
Introduction to AI Accelerator Prolog:
- specialized jobs -C-WAM (currently integerish stuff)
- -C-WAM uses no atomics, only comms
- -C-WAM uses warp, 30-40% more speed
- -C-WAM runs on GPU and CPU
- -C-WAM runs from within JavaScript, Python and Java
Feels like reinventing FGCS concurrent
logic programming.
LoL
Bye
Mild Shock schrieb:
Hi,
So the idea is to cover backtracking without
stack and choice points, only with registers.
So at the compute goto will use an instruction
that stores the PC target into a register,
a new instruction for Hack:
-a-a-a REG = PC + REL
And then the jump will be, again a new
instruction for Hack:
-a-a-a PC = REG
If we squeeze the lemon and compile as much
with that, we will only find that it breaks for
calling recursive predicates that can use
arbitary registers and choice points. But we
could maybe add stack and choice point as an
after match, instead of the classical WAM design
that starts with stack and choice points!
Bye
Mild Shock schrieb:
Hi,
pi-WAM is a nice challenge, since its aim is to go
even blow the instruction set of SWI-Prolog,
while only using a Hack variant as instruction
stream. But what is Hack? Well Hack seems to be
the missing legacy of Niclaus Wirths PL0. The
Hack (machine .asm) and Jack (highlevel compiler
generating .vm which can be converted to .asm)
combo makes even the famous Crafting Interpreters
/Lox by Bob Nystrom redundant:
Nand to Tetris courses are taught at 400+
universities, high schools, and bootcamps. The
students who take them range from high
schoolers to Ph.D. students to
https://www.nand2tetris.org/
But digging deaper in Hack, it has no functions
pointers so objects don't use virtual tables.
But what will pi-WAM need and that is not yet
in Hack? Given that my pi-WAM doesn't want a stack
nor a choice point lists? Currently there is the
idea to add a computed goto and that it can
cover a more lightweight C_OR as known from
SWI-Prolog, that would have the C_OR branches
maybe restricted to have no outside
clause calls? Lets see. Not yet sure.
Bye
Hi,
Accelerate Lean! And get from Theorem 3.11
to Corollary 3.12 done.
PROJECT LANA INTERIM REPORT ON IUT THEORY
ZEN Mathematics Center - 2026/07/17
https://zen.ac.jp/en/zmc
ZMCN+eZEN Mathematics Center) is an international
research institute established with the aim
of promoting and developing modern mathematics
with a focus on arithmetic geometry and the
formalization of modern mathematics using
computer languages
LoL
Bye
Mild Shock schrieb:
Hi,
Maybe I should write a blog post, titled
Introduction to AI Accelerator Prolog:
- specialized jobs -C-WAM (currently integerish stuff)
- -C-WAM uses no atomics, only comms
- -C-WAM uses warp, 30-40% more speed
- -C-WAM runs on GPU and CPU
- -C-WAM runs from within JavaScript, Python and Java
Feels like reinventing FGCS concurrent
logic programming.
LoL
Bye
Mild Shock schrieb:
Hi,
So the idea is to cover backtracking without
stack and choice points, only with registers.
So at the compute goto will use an instruction
that stores the PC target into a register,
a new instruction for Hack:
-a-a-a REG = PC + REL
And then the jump will be, again a new
instruction for Hack:
-a-a-a PC = REG
If we squeeze the lemon and compile as much
with that, we will only find that it breaks for
calling recursive predicates that can use
arbitary registers and choice points. But we
could maybe add stack and choice point as an
after match, instead of the classical WAM design
that starts with stack and choice points!
Bye
Mild Shock schrieb:
Hi,
pi-WAM is a nice challenge, since its aim is to go
even blow the instruction set of SWI-Prolog,
while only using a Hack variant as instruction
stream. But what is Hack? Well Hack seems to be
the missing legacy of Niclaus Wirths PL0. The
Hack (machine .asm) and Jack (highlevel compiler
generating .vm which can be converted to .asm)
combo makes even the famous Crafting Interpreters
/Lox by Bob Nystrom redundant:
Nand to Tetris courses are taught at 400+
universities, high schools, and bootcamps. The
students who take them range from high
schoolers to Ph.D. students to
https://www.nand2tetris.org/
But digging deaper in Hack, it has no functions
pointers so objects don't use virtual tables.
But what will pi-WAM need and that is not yet
in Hack? Given that my pi-WAM doesn't want a stack
nor a choice point lists? Currently there is the
idea to add a computed goto and that it can
cover a more lightweight C_OR as known from
SWI-Prolog, that would have the C_OR branches
maybe restricted to have no outside
clause calls? Lets see. Not yet sure.
Bye
| Sysop: | Amessyroom |
|---|---|
| Location: | Fayetteville, NC |
| Users: | 74 |
| Nodes: | 6 (0 / 6) |
| Uptime: | 53:55:06 |
| Calls: | 1,101 |
| Calls today: | 1 |
| Files: | 1,339 |
| Messages: | 276,282 |