I remain unconvinced, but maybe LLM's will provide progress without individual comprehension?
(at which point we should maybe be speaking of Applied Computation rather than Computer Science? then again, at systems institutions that Rubicon has already been crossed...)
Or maintained in a self-reinforcing or propagating system.
We study how people use political power and how the political system works, because there are persistent dynamics, good and bad, that we don’t see until we look.
Same with economics.
Same with biological life.
Conscious understanding is not required for implicit knowledge to emerge in a system and maintain itself
In the sense that we are not actually aware of the details of how our minds work, even we ourselves are full of implicit knowledge. Some of which we pass on by example, over and over, without conscious recognition
> Conscious understanding is not required for implicit knowledge to emerge in a system and maintain itself
Isn't this what most people (incorrectly, imo) call "knowledge"? The idea that "we know this", when "we" is not a thing that can know, as knowing can only occur in an individual. Still the collective is able to manage itself, little cogs in a big machine.
I first encountered similar advice when reading the slides of David Patterson’s talk “How to Have a Bad Career in Research/Academia” as an undergraduate in the late 2000s who was planning a career in computer science research:
It might be Paul Halmos. In his "automathobiography", titled I Want to Be a Mathematician (Springer 1985), page 156: "In the late 1940's I began to act on one of my beliefs: to stay young, you have to change fields every five years". He goes on saying "I didn't first discover it and then act on it, but instead, noting that I did in fact seem to change directions every so often, I made a virtue out of a fact and formulated it as a piece of wisdom".
Note the downward trend in the number of new programming languages per decade. Probably because this field of CS has reached maturity stage and new greenfield projects are less in demand.
Those are only the "notable" languages. If we consider less than notable languages as well, we might get something like the languages on Rosetta Code [1]. Looking throught the history of that page, I see that about 10% of the current 834 languages were added in just the last 5 years. Which is much less suggestive of a downward trend.
I feel like this is looking at things through the wrong lens and forcing them to fit in an uncomfortable way.
Do interactive incentive based protocols like bitcoin (or even bittorrent) provide a fascinating and fundamentally different design space than traditional algorithms operating on input and returning output?
Sure, i'll grant that.
Are Turing machines the right abstraction to model them? No probably not.
Does that mean the church-turing thesis is a barrier to progress?
This is where the post lost me. I'd go with obviously not. The church-turing thesis isn't even very important for normal real-world algorithm development unless you are wondering if your program halts. It seems obvious here that that is not the barrier.
That said, I think there is a thread of truth here that our current models of computation aren't sufficient to capture interactive protocols where ecconomic or behavioural incentives play a significant role. I'd even agree that to really make such protocols, we have to understand the space better, and we can only do that by being able to model it.
I don't know if i really disagree so much as dislike the way the author presents it. I feel like the author is giving some metaphysical importance to turing machines and their relation to the soul and the unknowableness of the other. All this borderline religious mubo jumbo obscures what is really going on.
i just see this as a case where all models are wrong but some models are useful. Algorithms where economic/behavioural effects matter need to use a model informed by fields like psychology, sociology, economics etc (i want to say psychohistory) and not pure computer science. That's all.
Sure, we need more work to find such models, but its not a fundamental shift. We do that all the time when modelling new phenomenon.
> Does that mean the church-turing thesis is a barrier to progress?
As a working programmer who isn’t afraid to read academic papers, I can say it absolutely isn’t. Neither the lambda calculus nor turing machines make more than a cameo appearance in the pragmatically useful literature.
On the other hand, Algol 60 derived pseudocode and the abstract machine that it implies is ubiquitous.
It seems like there is a fallacy baked in here; that since all computaion is Turing-computable, that all models of computation are equivalent?
A computation system is an execution mechanism plus data on which to compute, plus an program or meta-algorithm. Otherwise the computation and the mechanism are unified and the device is a calculator, and not a computer.
The assumption that systems with unknown data and algorithms (somewhat the current state of LLMS) are fundamentally not Turing computable is demonstrably false.
That the Turing machine itself is fundamentally a different computation mechanism than a Turing machine with a program of arbitrary complexity, however, is true, and is what I think the author may be rubbing against?
The meta-algorithm of a program vs the algorithm inherent in processing equipment is I think what the author is seeing here. some languages seek to constrain the potential randomness of the meta-algorithm . This does certainly constrain the possibilities of their output, by design, and can be as constraining to innovation as it is to undesired behavior for this reason; the requirement is to understand the problem in its entirety before beginning, which is to say that these languages excel at problems that are a priory already solved.
Anyway, that’s my ramble about the authors ramble lol.
16 comments
[ 3.3 ms ] story [ 50.8 ms ] thread(at which point we should maybe be speaking of Applied Computation rather than Computer Science? then again, at systems institutions that Rubicon has already been crossed...)
We study how people use political power and how the political system works, because there are persistent dynamics, good and bad, that we don’t see until we look.
Same with economics.
Same with biological life.
Conscious understanding is not required for implicit knowledge to emerge in a system and maintain itself
In the sense that we are not actually aware of the details of how our minds work, even we ourselves are full of implicit knowledge. Some of which we pass on by example, over and over, without conscious recognition
Isn't this what most people (incorrectly, imo) call "knowledge"? The idea that "we know this", when "we" is not a thing that can know, as knowing can only occur in an individual. Still the collective is able to manage itself, little cogs in a big machine.
Who said this?
https://people.eecs.berkeley.edu/~pattrsn/talks/BadCareer.pd...
https://en.wikipedia.org/wiki/Timeline_of_programming_langua...
[1] https://rosettacode.org/wiki/Rosetta_Code/Rank_languages_by_...
Lucky for us that's only a narrow corner I guess?
Do interactive incentive based protocols like bitcoin (or even bittorrent) provide a fascinating and fundamentally different design space than traditional algorithms operating on input and returning output?
Sure, i'll grant that.
Are Turing machines the right abstraction to model them? No probably not.
Does that mean the church-turing thesis is a barrier to progress?
This is where the post lost me. I'd go with obviously not. The church-turing thesis isn't even very important for normal real-world algorithm development unless you are wondering if your program halts. It seems obvious here that that is not the barrier.
That said, I think there is a thread of truth here that our current models of computation aren't sufficient to capture interactive protocols where ecconomic or behavioural incentives play a significant role. I'd even agree that to really make such protocols, we have to understand the space better, and we can only do that by being able to model it.
I don't know if i really disagree so much as dislike the way the author presents it. I feel like the author is giving some metaphysical importance to turing machines and their relation to the soul and the unknowableness of the other. All this borderline religious mubo jumbo obscures what is really going on.
i just see this as a case where all models are wrong but some models are useful. Algorithms where economic/behavioural effects matter need to use a model informed by fields like psychology, sociology, economics etc (i want to say psychohistory) and not pure computer science. That's all.
Sure, we need more work to find such models, but its not a fundamental shift. We do that all the time when modelling new phenomenon.
As a working programmer who isn’t afraid to read academic papers, I can say it absolutely isn’t. Neither the lambda calculus nor turing machines make more than a cameo appearance in the pragmatically useful literature.
On the other hand, Algol 60 derived pseudocode and the abstract machine that it implies is ubiquitous.
A computation system is an execution mechanism plus data on which to compute, plus an program or meta-algorithm. Otherwise the computation and the mechanism are unified and the device is a calculator, and not a computer.
The assumption that systems with unknown data and algorithms (somewhat the current state of LLMS) are fundamentally not Turing computable is demonstrably false.
That the Turing machine itself is fundamentally a different computation mechanism than a Turing machine with a program of arbitrary complexity, however, is true, and is what I think the author may be rubbing against?
The meta-algorithm of a program vs the algorithm inherent in processing equipment is I think what the author is seeing here. some languages seek to constrain the potential randomness of the meta-algorithm . This does certainly constrain the possibilities of their output, by design, and can be as constraining to innovation as it is to undesired behavior for this reason; the requirement is to understand the problem in its entirety before beginning, which is to say that these languages excel at problems that are a priory already solved.
Anyway, that’s my ramble about the authors ramble lol.