New Ways To Solve Chess

Discussion of anything and everything relating to chess playing software and machines.

Moderator: Ras

chrisw
Posts: 4936
Joined: Tue Apr 03, 2012 4:28 pm
Location: Anywhere but the Western Empire
Full name: Christopher Whittington

Re: New Ways To Solve Chess

Post by chrisw »

towforce wrote: Sat May 02, 2026 10:19 pm
chrisw wrote: Sat May 02, 2026 8:54 pm In short: The brain behind the text is towforce; the editor was likely an AI.
You've invested a lot of time and bandwidth to come to a very silly conclusion. I don't write posts and then ask a chatbot to rewrite them. When I use a chatbot:

1. I tag then text that's written by a chatbot

2. It's done to provide a concise and accurate summary of valuable information in a video
Your comprehension skills are not good.
The allegation is that: "Towforce provided the specific prompts/ideas: "Write about Topological Data Analysis and Graph Theory (betweenness centrality) applied to chess, mentioning the Google PageRank and Italian families analogy."

You didn't write any text, you gave an AI a leading prompt and the AI wrote the text. Then you present it as if you wrote it. But that falls flat because it uses words and language structures way above your pay grade and understanding. Why you behave like this is fathomable. Attention seeking.
chesskobra
Posts: 370
Joined: Thu Jul 21, 2022 12:30 am
Full name: Chesskobra

Re: New Ways To Solve Chess

Post by chesskobra »

petero2 wrote: Sun May 03, 2026 7:10 am
syzygy wrote: Sun May 03, 2026 3:48 am
And "in polynomial time" is totally meaningless when talking about solving 8x8 chess.

If you mean solving generalized NxN chess in time polynomial in N, then it has already been shown that this would imply P=NP, which is (1) unlikely to be true, (2) certainly not approachable with any "method" discussed in those two papers.
It's even worse than that, since generalized chess is EXPTIME complete, so not even P=NP would help. It has already been attempted to explain to him what implications this has, but the attempt was apparently not very successful.

viewtopic.php?p=961574#p961574
viewtopic.php?p=962478#p962478
I remember that thread. The problem is that he finds a paper that looks interesting, fantasizes that the paper somehow supports his gut feeling that there are deep patterns and once we find them, chess will be solved completely, and then confidently talks about it in high level terms. That is the deep pattern I have noticed.
User avatar
towforce
Posts: 13025
Joined: Thu Mar 09, 2006 12:57 am
Location: Birmingham UK
Full name: Graham Laight

Re: New Ways To Solve Chess

Post by towforce »

heroku wrote: Sat May 02, 2026 11:04 pm Hello I have a script written in a language I call gofchess, that attempts to describe chess tactics it looks like this:

if has_fork_with_checks_and_hanging_for_only_king_evades(bishop, bishop2, king, rook) then
forall king_evades(king, king2) then
if captures(bishop2, rook_bishop3) then
if push_attacks(pawn, pawn2, bishop3) then
if captures(bishop3, pawn2_bishop4) then
if promotes(pawn, pawn2_queen) then
if captures(king3, queen_king4) then


The if keyword(Variables) then structure is fixed and used everywhere, keyword are the second part of the language defined like this:


def triple_fork_with_checks_for_only_king_evades(From, To, King, ForkB, ForkC)
move(From, To)
attack(To, King)
attack(To, ForkB)
attack(To, ForkC)
no_captures(To)
no_blocks_check(To, King)
no_push_blocks_check(To, King)


For example this keyword when defined can be used in the if then form. And the body of the definition uses builtin keywords with specific meanings, where a move(From, To) is a move happening, and attack(To, King) meaning filters To attacks King without moving anything.

The execution is about unification of variables similar to Prolog. Where in the definition Uppercase variable names are used, and if then form uses lower case piece roles, which is run against a chess position and the piece roles are bound to square names.

There is no formal specification or anything, but I hope you get the gist of how it works. I've built several iterations of this working in both Typescript and C++ very efficiently.
I could write a lot of in this language to extract the solution lines of chess puzzles (taken from Lichess DB). But the problem is as the rules get more and more, there are false positive matches, and it grows.

If you are interested in this idea, or have any constructive feedback, I am open to a discussion.

Here's the MIT License form of the engine written in Typescript: https://github.com/eguneys/hopefox/blob ... second.gof
Nice work! 8-)

I have no experience in Prolog, but there seem to be a lot of hanging "then" clauses. Do "then" clauses need to be completed? Can multiple rules fire?

Edit: Sorry - you did say it was Typescript - so are the hanging "then" clauses awaiting completion?
Last edited by towforce on Sun May 03, 2026 1:35 pm, edited 1 time in total.
Human chess is partly about tactics and strategy, but mostly about memory
chrisw
Posts: 4936
Joined: Tue Apr 03, 2012 4:28 pm
Location: Anywhere but the Western Empire
Full name: Christopher Whittington

Re: New Ways To Solve Chess

Post by chrisw »

You are dealing with an Intellectual Narcissist, someone whose ego is so inflated that they view their "natural intuition" as superior to formal expertise.

Epistemic Arrogance: They believe they possess a "universal logic" that allows them to debunk specialists without reading the source material. It’s their intuition and cherry picked ‘facts’ against years of study and expertise.

Dunning-Kruger Peak: They mistake a surface-level "vibe" of a subject for deep mastery, often dismissing experts with jargon and word salads.

The Goal: Experts want to get to the truth, they, by contrast, want to be the smartest person in the room.
User avatar
towforce
Posts: 13025
Joined: Thu Mar 09, 2006 12:57 am
Location: Birmingham UK
Full name: Graham Laight

Re: New Ways To Solve Chess

Post by towforce »

syzygy wrote: Sun May 03, 2026 3:48 am
towforce wrote:
syzygy wrote: Sat May 02, 2026 7:09 pm
towforce wrote: Sat May 02, 2026 5:37 pm Neither method is anywhere near solving chess - but they would be if they had received the effort and competition that selective search and AI training has.
Neither paper has anything to do with solving chess. The second paper has nothing to do with chess at all. The first is just an attempt to define a measure of "fragility" of a chess position, apparently by somehow counting the number of ways in which pieces attack and defend each other. The paper does not do anything with this measure other than presenting some statistics collected from some games. This paper gets just as close to "solving chess" as the primitive evaluation of chess positions proposed by Turing.
The two methods presented both have more potential to solve chess in polynomial time than current methods.
Absolutely not. (And this is not criticism of the papers because the papers don't claim anything like that.)

Look, I know how to read a paper. I understand what I am reading. You apparently do not. This is not a discussion worth having.

And "in polynomial time" is totally meaningless when talking about solving 8x8 chess.

If you mean solving generalized NxN chess in time polynomial in N, then it has already been shown that this would imply P=NP, which is (1) unlikely to be true, (2) certainly not approachable with any "method" discussed in those two papers.
Both methods go to fundamentally new ways of getting big picture information about chess, and either method would, if had been studied and competed like selective search, have got us closer to a final solution than other methods (unless you want to make the case that chess is now solved because it's no longer possible to win a game in correspondence time intervals). If there's a criticism to be made here, it's that the title should have been "Potential New Ways To Solve Chess".

Your P=NP argument is false. As it happens, I do believe that P=NP where a puzzle has a hidden pattern, which is definitely more often than most experts realise. However, P=NP is not relevant here: it has been proven that as the chess board size increases the number of moves grows exponentially, but that's not the same as saying that it's impossible to create an algorithm that would "solve" the game quickly on a cheap computer. I know this very well, because other people have challenged me on this very point in the past at this site, so I am completely familiar with what is proven and what isn't.
Human chess is partly about tactics and strategy, but mostly about memory
User avatar
towforce
Posts: 13025
Joined: Thu Mar 09, 2006 12:57 am
Location: Birmingham UK
Full name: Graham Laight

Re: New Ways To Solve Chess

Post by towforce »

petero2 wrote: Sun May 03, 2026 7:10 amIt's even worse than that, since generalized chess is EXPTIME complete, so not even P=NP would help. It has already been attempted to explain to him what implications this has, but the attempt was apparently not very successful.

viewtopic.php?p=961574#p961574
viewtopic.php?p=962478#p962478
Thank you for those references - it will save anyone from having to go through the proofs again.

As you can see, I have read the papers, and I have stated in a straightforward way what is proven and what isn't. I'll restate that here:

What IS Proven

As the size of a chessboard increases, the time it takes to play the game increases exponentially (it takes a lot more moves to do something that you can do when the opponent is trying to stop you).


What IS NOT Proven

There is no proof (nor even any hint of evidence) in the referenced papers that it is not possible to construct an algorithm that solves chess in a reasonable time on a cheap computer.
Human chess is partly about tactics and strategy, but mostly about memory
User avatar
towforce
Posts: 13025
Joined: Thu Mar 09, 2006 12:57 am
Location: Birmingham UK
Full name: Graham Laight

Re: New Ways To Solve Chess

Post by towforce »

chrisw wrote: Sun May 03, 2026 7:50 am
towforce wrote: Sat May 02, 2026 10:19 pm
chrisw wrote: Sat May 02, 2026 8:54 pm In short: The brain behind the text is towforce; the editor was likely an AI.
You've invested a lot of time and bandwidth to come to a very silly conclusion. I don't write posts and then ask a chatbot to rewrite them. When I use a chatbot:

1. I tag then text that's written by a chatbot

2. It's done to provide a concise and accurate summary of valuable information in a video
Your comprehension skills are not good.
The allegation is that: "Towforce provided the specific prompts/ideas: "Write about Topological Data Analysis and Graph Theory (betweenness centrality) applied to chess, mentioning the Google PageRank and Italian families analogy."

You didn't write any text, you gave an AI a leading prompt and the AI wrote the text. Then you present it as if you wrote it. But that falls flat because it uses words and language structures way above your pay grade and understanding. Why you behave like this is fathomable. Attention seeking.
I've proved that to be incorrect: the top AI text detector (which I linked) stated that my text (the OP) is 99% certainly written by a human.

The AI text detector is correct. You are wrong.
Human chess is partly about tactics and strategy, but mostly about memory
heroku
Posts: 11
Joined: Sat May 23, 2020 5:17 pm
Full name: Emre Guneyler

Re: New Ways To Solve Chess

Post by heroku »

No that's just syntax to help human understanding with no other functionality, you put these forms sequentially on each line: `if user_defined_condition(Variables) then`, then trick is Variables unification and gets bounded to squares, that allows matching across different move steps.

`user_defined_condition` is defined later in the language composed of more builtin keywords, where a move can happen and some filters can apply before or after the move has happened. like who attacks who, all checked through variables.

This engine is implemented in Typescript, but this language with if then syntax is the formal chess tactics language called gofchess.

Let me give you a simple example:

Code: Select all

===

if check_king_no_block_no_capture(queen, queen2, king) then

###

def check_king_no_block_no_capture(From, To, King) then
  move(From, To)
  attack(To, King)
  no_captures(To)
  no_blocks_check(To, King)
  no_push_blocks_check(To, King)
  opposite(To, King)
this is like a queen checks king with nothing can block or capture the queen after the move has been made. This can match any such position that has this structure and output the queen move as well.
queen is queen's initial position.
queen2 is queen's next position after it moves.
king is the king that has been checked.

I added the builtin filter opposite(To, King) that means, To variable and King variable are opposite colors. To avoid queen checking it's own king or something.
chesskobra
Posts: 370
Joined: Thu Jul 21, 2022 12:30 am
Full name: Chesskobra

Re: New Ways To Solve Chess

Post by chesskobra »

towforce wrote: Sun May 03, 2026 1:58 pm
petero2 wrote: Sun May 03, 2026 7:10 amIt's even worse than that, since generalized chess is EXPTIME complete, so not even P=NP would help. It has already been attempted to explain to him what implications this has, but the attempt was apparently not very successful.

viewtopic.php?p=961574#p961574
viewtopic.php?p=962478#p962478
Thank you for those references - it will save anyone from having to go through the proofs again.

As you can see, I have read the papers, and I have stated in a straightforward way what is proven and what isn't. I'll restate that here:

What IS Proven

As the size of a chessboard increases, the time it takes to play the game increases exponentially (it takes a lot more moves to do something that you can do when the opponent is trying to stop you).
Why do you talk ambiguously? Let me quote the abstract of the paper (that you had cited in the past).

A. S. Fraenkel and D. Lichtenstein. Computing a perfect strategy for nxn chess requires time exponential in n. J. Combinatorial Theory, Series A 31, 199-214 (1981).

Abstract: It is proved that a natural generalization of chess to an n x n board is complete in exponential time. This implies that there exist chess positions on an n x n chessboard for which the problem of determining who can win from that position requires an amount of time which is at least exponential in sqrt(n).
towforce wrote: Sun May 03, 2026 1:58 pm What IS NOT Proven

There is no proof (nor even any hint of evidence) in the referenced papers that it is not possible to construct an algorithm that solves chess in a reasonable time on a cheap computer.
Not responding to this since you are not stating your claim precisely. First let us know if you are talking about 8x8 chess or nxn chess. Then also clarify what is reasonable time and cheap computer.
chrisw
Posts: 4936
Joined: Tue Apr 03, 2012 4:28 pm
Location: Anywhere but the Western Empire
Full name: Christopher Whittington

Re: New Ways To Solve Chess

Post by chrisw »

towforce wrote: Sun May 03, 2026 2:01 pm
chrisw wrote: Sun May 03, 2026 7:50 am
towforce wrote: Sat May 02, 2026 10:19 pm
chrisw wrote: Sat May 02, 2026 8:54 pm In short: The brain behind the text is towforce; the editor was likely an AI.
You've invested a lot of time and bandwidth to come to a very silly conclusion. I don't write posts and then ask a chatbot to rewrite them. When I use a chatbot:

1. I tag then text that's written by a chatbot

2. It's done to provide a concise and accurate summary of valuable information in a video
Your comprehension skills are not good.
The allegation is that: "Towforce provided the specific prompts/ideas: "Write about Topological Data Analysis and Graph Theory (betweenness centrality) applied to chess, mentioning the Google PageRank and Italian families analogy."

You didn't write any text, you gave an AI a leading prompt and the AI wrote the text. Then you present it as if you wrote it. But that falls flat because it uses words and language structures way above your pay grade and understanding. Why you behave like this is fathomable. Attention seeking.
I've proved that to be incorrect: the top AI text detector (which I linked) stated that my text (the OP) is 99% certainly written by a human.

The AI text detector is correct. You are wrong.
Pfff. A selected AI proves NOTHING. Do you know what a PROOF is, actually? Disingenuous, as ever. To repeat, I asked the AI: "I ran your post through an AI and asked it to compare towforce other talkchess posts and comment on whether the towforce entity wrote it himself."

Not asked if AI wrote it, asked if YOU wrote it by comparing to your other talkchess posts. The AI wasn't asked if an AI wrote it, no leading question was posed.

The AI responded: Likely assisted. The prose is too "perfect" compared to his other 2,000+ posts on the forum. It lacks the "human noise" (slight repetitions, informal phrasing) present in his live discussions.

Then the AI added: Comparing this text to his broader body of work, the most likely scenario is Human-Directed Synthesis:.Towforce provided the specific prompts/ideas: "Write about Topological Data Analysis and Graph Theory (betweenness centrality) applied to chess, mentioning the Google PageRank and Italian families analogy."


So, who wrote it? Obviously not you, the terminology and style is way above your pay grade as ani fule kno. Yet the post has your name on it, no attribution to anyone else, and now your claim that "a human" wrote it. Which human? Which human can you freely plagiarise without attribution? Which human is going to write such discombobulated nonsense anyway? An prompted AI, very likely. An expert with some knowledge/experience, highly unlikely? Please do tell.