Can a Computer Recognize a Paradox?

Click For Summary

Discussion Overview

The discussion centers around whether a computer can be programmed to recognize and handle paradoxes, particularly in the context of logical reasoning and artificial intelligence. Participants explore the implications of paradoxes in programming, the nature of logical contradictions, and the potential for computers to process flawed logic.

Discussion Character

  • Exploratory
  • Debate/contested
  • Technical explanation

Main Points Raised

  • Some participants suggest that presenting logical contradictions to a computer is more a storytelling device than a technical limitation, arguing that software can be designed to handle such data.
  • Others propose that paradoxes are inherently inconsistent and that a computer could potentially identify them by testing assumptions and eliminating contradictory results.
  • A few participants express skepticism about whether a computer can truly recognize a paradox, suggesting that this may require abstract thinking beyond current programming capabilities.
  • One participant discusses the idea of a computer's control systems being designed to prevent failure from logical paradoxes through redundancy and voting mechanisms among multiple computers.
  • Another participant reflects on the nature of bad data and how a computer might filter out flawed logic, comparing this process to human reasoning.

Areas of Agreement / Disagreement

Participants do not reach a consensus on whether computers can recognize paradoxes. There are competing views on the capabilities of programming in relation to logical contradictions, with some believing it is possible and others expressing doubt.

Contextual Notes

The discussion highlights limitations in current programming approaches to handling paradoxes and the assumptions underlying various viewpoints. There is also an acknowledgment of the potential for programmer error in designing systems to deal with logical inconsistencies.

Who May Find This Useful

This discussion may be of interest to those exploring artificial intelligence, logic, programming, and the philosophical implications of paradoxes in computational systems.

  • #31
meBigGuy said:
Is a digital system with a random quantum IO value turing? You are saying it is not a turing system because because it is not repeatable, but if you include the IO value as part of the system, it is perfectly repeatable. The quantum not gate is certainly simulatable and can give a perfectly random value for the observation of its midterm of you have access to random IO. You cannot finitely and digitally simulate a random IO, but I don't think that is the issue.

You can say that a quantum system is not simulatable by a purely digital system. But I have a problem with classifying a deterministic digital system with access to true randomness as not deterministic. (depends on your frame of reference?)

But, didn't this start by the inference that high AI is needed to ferret out a paradox? I don't think that is the case.

Yeah the thread is drifting a little bit at this point, but its interesting to me. As to your problem, yes most certainly: if several hours of digital input from a security camera are the inputs to a computer program that processes them, its certainly deterministic, in that those same several hours of footage will always get the same output from the same program. However, if we move the border of the system out to the front of the security camera, and we say that the same light fields that occurred in front of the camera for the first several hours will appear again exactly the same, the digital input will probably be different this time, because now quantum effects of light are at play, and the ways the exact same probability wave functions of the exact same light fields collapse will be random and different due to quantum law. So once you bring that tiny bit of randomness in, the whole system is now non-deterministic. So yeah, its about where you draw the boundary, maybe that's what you meant by frame of reference.

As far as the paradox issue, Jesus... the OP sent me on a line of research that blew up my mind and has me reeling. I suspect you're right... but man, there's some weird stuff surrounding paradoxes.
 
Technology news on Phys.org
  • #32
Shouldn't paradox be treated under exception handling? I mean treat it as usual case when something is wrong with data / function and just try to resume operation anyway?

I mean for practical reasons an AI may face imperfect data input all the time. Realistic approach involves some default workaround function.
 
  • #33
Keln said:
Simple question: Can a computer be taught to recognize a paradox?
No. At least not always.

I'm surprised that after 32 posts, no one has mentioned the halting problem.

Python:
from halting import returns
# The halting module provides functions that analyze python programs and
# functions for infinite loops and related problems.
# The function halting.returns(f) returns
# - True if the function f returns in finite time,
# - False otherwise.

def all_cretans_are_friendly() :
    while returns(all_cretans_are_friendly) :
        print ("Hello!")

How many times does all_cretans_are_friendly print "Hello!"? Zero times? An infinite number of times? Something else?

If the function enters the loop, it will stay in the loop, printing "Hello" forever and ever. The function won't return, so halting.returns(all_cretans_are_friendly) must return False. But then all_cretans_are_friendly never enters the loop, in which case halting.returns(all_cretans_are_friendly) must return True. But then all_cretans_are_friendly must loop forever. A paradox!

The function halting.returns cannot exist. The halting problem, or anything equivalent to it, is undecidable by a Turing machine. There are a number of problems in computer science that are equivalent to the halting problem. Rice's theorem says that any non-trivial question about a computer programming language is undecidable because any non-trivial question is equivalent to the halting problem.
 
  • #34
D H said:
No. At least not always.

I'm surprised that after 32 posts, no one has mentioned the halting problem.
...

You make good points there, but ultimately you're right: The returns() function can't exist, that's all there is to it. Assuming that function exists creates a contradiction, assuming it does not exist does not, so it does not exist, Once you accept that fact, as everyone does, there is no paradox, just a reference to a non-existent function. What I'm not seeing (and maybe I'm being foggy) is does this directly applies to recognizing logical paradoxes? I just don't know, it might.

I was actually looking into something similar before this post even came up, with Kolmogorov complexity. My question was here:
https://www.physicsforums.com/threads/help-with-kolmogorov-complexity-proof.811244/
You have a similar situation, where the kolmogorov() function can't exist as a computable function. The weird thing is, my program I describe in that post, will always calculate the correct answer to the kolmogorov() function in finite time, it just can't return it because it doesn't know when its computed it. That was confusing me. Its the computer version of the Berry Paradox. I can wave my hand at the Berry Paradox, but once you see it in computational form, its so solid and so damned weird. There basically expressions that clearly have solutions which are singular, simple numbers, but if you know what they are with certainty, math collapses with a paradox. Its so weird at this point I'm just standing back and saying "Woah".
 

Similar threads

  • · Replies 33 ·
2
Replies
33
Views
6K
  • · Replies 1 ·
Replies
1
Views
6K
Replies
10
Views
5K
  • · Replies 13 ·
Replies
13
Views
4K
Replies
3
Views
6K
  • · Replies 1 ·
Replies
1
Views
5K
  • · Replies 1 ·
Replies
1
Views
4K
  • · Replies 25 ·
Replies
25
Views
7K
  • · Replies 27 ·
Replies
27
Views
5K