Propriétés décidables des réels calculables

10

Le «théorème de Rice pour les réels calculables» - c'est-à-dire qu'aucune propriété non triviale du nombre représenté par un réel calculable donné n'est décidable - est-il vrai?

Cela correspond-il d'une manière directe à la connectivité des réels?

Shachaf
la source

Réponses:

8

Oui, le théorème de Rice pour les réels est valable dans toutes les versions raisonnables des réels calculables.

Je vais d'abord prouver un certain théorème et un corollaire, et expliquer plus tard ce que cela a à voir avec la calculabilité.

Théorème: Supposons que p:R{0,1} est une carte et deux réels tels que et . Il existe alors une séquence de Cauchy telle que pour tout j \ in \ mathbb {N} .a,bRp(a)=0p(b)=1(xi)ip(limixi)p(xj)jN

Preuve. Nous construisons une séquence de paires de réels comme suit: Observez cela pour tout :( y 0 , z 0 )(yi,zi)i i

(y0,z0)=(a,b)(yi+1,zi+1)={(yi,(yi+zi)/2)if p((yi+zi)/2)=1((yi+zi)/2,zi)if p((yi+zi)/2)=0
iN
  • p ( z i ) = 1p(yi)=0 etp(zi)=1
  • |ziyi|=|ba|2i
  • |yi+1yi||ba|2i
  • |zi+1zi||ba|2i

Ainsi les séquences et sont Cauchy et elles convergent vers un point commun . Si alors nous prenons , et si alors nous prenons . ( z i ) i c = lim i y i = lim i z i p ( c ) = 0 ( x i ) i = ( z i ) i p(yi)i(zi)ic=limiyi=limizip(c)=0(xi)i=(zi)i( x i ) i = ( y i ) ip(c)=1(xi)i=(yi)i

Corollaire: Supposons et deux réels tels que et . Ensuite, chaque machine Turing fonctionne pour toujours ou ne fonctionne pas pour toujours.p:R{0,1} p ( a ) = 0 p ( b ) = 1a,bRp(a)=0p(b)=1

Preuve. Par le théorème, il existe une séquence de Cauchy telle que pour tout . Sans perte de généralité, nous pouvons supposer que et . p ( x j ) p ( lim i x i ) j B p ( x j ) = 1 p ( lim i x i ) = 0(xi)ip(xj)p(limixi)jBp(xj)=1p(limixi)=0

Soit une machine de Turing. Définissez une séquence par La séquence est bien définie car nous pouvons simuler jusqu'à étapes et décider si elle s'est arrêtée ou non dans ce nombre d'étapes. Ensuite, observez que est une séquence de Cauchy car est une séquence de Cauchy (nous laissons cela comme un exercice). Soit . Soit ou :y i y i = { x j si  T  s'arrête à l'étape  j  et  j i x i si  T  ne s'arrête pas dans  i  étapes T i ( y i ) i ( x i ) i zTyi

yi={xjif T halts in step j and jixiif T does not halt within i steps
Ti(yi)i(xi)i p ( z ) = 0 p ( z ) = 1z=limiyip(z)=0p(z)=1
  • si alors s'exécute pour toujours. En effet, s'il s'arrêtait après étapes, alors nous aurions , et donc contredirait .T j z = x jp(z)=0Tjz=xjp ( z ) = 0p(z)=p(xj)=1p(z)=0

  • si alors ne s'exécute pas indéfiniment. En effet, si c'était le cas, alors nous aurions , et donc , contredisant . T z = lim i x i p ( z ) = p (p(z)=1Tz=limixip ( z ) = 0 p(z)=p(limixi)=0p(z)=0

Nous pouvons maintenant expliquer pourquoi cela nous donne le théorème de Rice pour les nombres réels. Les preuves sont constructives, donc elles donnent des procédures calculables. Cela est vrai de tout modèle de calculabilité et de toute structure de calcul de réels qui méritent d'être appelés ainsi. En fait, vous pouvez revenir en arrière et lire la preuve comme des instructions pour la construction d'un programme - toutes les étapes sont calculables.

Ainsi, si nous avions une carte calculable et calculable telle que et , alors nous pourrions appliquer les procédures calculables découlant des preuves constructives du théorème et du corollaire pour créer l'oracle de Halting. Mais l'oracle Halting n'existe pas, par conséquent, chaque carte calculable est constante.a , b R p ( a ) =p:R{0,1}a,bRp ( 1 ) = 1 p : R{ 0 , 1 }p(a)=0p(1)=1p:R{0,1}

Supplémentaire: Il y avait aussi une question de savoir si le théorème de Rice était lié à la connectivité des réels. Oui, c'est essentiellement la déclaration que les réels sont connectés.

Observons d'abord qu'une carte continue (on prend la topologie discrète sur ) correspond à une paire d'ensembles clopen disjoints (fermés et ouverts) tel que . En effet, prenons et . Parce que est continue et et sont ouverts, et seront ouverts, disjoints, et ils couvrent évidemment tous . Inversement, toute paire de clopens disjoints qui couvrent détermine une carte continue{ 0 , 1 } U , V X U V = X U = p - 1 ( { 0 } ) V = p - 1 ( { 1 } ) p { 0 }p:X{0,1}{0,1}U,VXUV=XU=p1({0})V=p1({1})p{0}U V X ( U , V ) X p{1}UVX(U,V)XU 0 V 1p:X{0,1} qui mappe les éléments de à et les éléments de à .U0V1

De cela, nous apprenons qu'un espace est déconnecté si, et seulement si, il existe une carte continue et telle que et (nous avons besoin de et pour obtenir une décomposition non triviale de ). Il y a une autre façon de dire la même chose: un espace est connecté si, et seulement si, toutes les cartes continues sont constantes.p : X { 0 , 1 } a , b X p ( a ) = 0 p ( 1 ) = b a b X X X { 0 , 1 }Xp:X{0,1}a,bXp(a)=0p(1)=babXXX{0,1}

En mathématiques calculables, nous avons un théorème de base: chaque carte calculable est continue . Donc, tant que nous sommes dans le domaine des objets calculables, le théorème de Rice déclare en fait qu'un certain espace est connecté. Dans le cas du théorème classique de Rice, l'espace en question est l'espace des fonctions calculables partielles .NN

Andrej Bauer
la source
Merci! C'est ce que je cherchais. Une idée de l'autre question - si cela est directement lié à la connectivité des réels?
Shachaf
J'ai ajouté une explication sur le fait que le théorème de Rice est en fait une forme de théorème de connectivité.
Andrej Bauer
Supposons que et définissez si ne s'arrête pas en étapes et sinon. Si T ne s'arrête pas alors converge vers , sinon il converge vers . Si sont calculables, alors étant donné , on peut générer une machine calculant la limite de . Pourquoi cela ne suffit-il pas pour montrer que ne peut être ni calculable, ni même semi-décidable (car n'arrête pas ssi esty i = x T i y i = x y i x x x , x T y i pp(x)=1,p(x)=0yi=xTiyi=xyixxx,xTyipp 1Tp1sur la limite). De toute évidence, il me manque quelque chose, car il existe des propriétés non triviales qui sont semi-décidables.
Ariel
1
Votre définition de est correcte, mais vous avez également besoin d'un taux de convergence calculable de la séquence afin de prétendre que sa limite est calculable. Puisque nous ne pouvons pas calculer à quel indice la séquence pourrait passer de à (ou bien nous pourrions calculer à quelle étape s'arrêtera), un tel taux de convergence calculable ne peut pas être obtenu. y i i y i x x TTyiiyixxT
Andrej Bauer
-1

Non. Ou, au moins, la preuve n'est pas anodine, car vous pouvez choisir parmi les (généralement plusieurs) façons possibles de calculer un réel, et vous pouvez en choisir une avec une structure qui est totale par rapport à la propriété choisie afin que vous ne réduisez pas le test de la propriété au problème d'arrêt.

De plus, je pense que j'ai besoin de mieux comprendre ce que signifie "non trivial" par rapport aux propriétés des nombres. Pour le théorème de Rice, «non trivial» est fondamentalement non syntaxique et n'est pas impliqué par la syntaxe. Cependant, chaque nombre réel calculable n'est pas un programme unique, mais plutôt une classe d'équivalence pleine de programmes.

Boyd Stephen Smith Jr.
la source
1
Je ne sais pas ce que tu veux dire ici. Essayez-vous de faire la distinction entre des nombres réels calculables (par exemple, , , , etc.) et les programmes qui les calculent? Bien sûr, il existe une infinité de programmes qui calculent chaque réel calculable, mais il existe également une infinité de machines Turing qui décident de tout langage décidable, et le théorème de Rice ordinaire n'a aucun problème avec cela. 22 / sept π222/7π
David Richerby
Les différentes représentations de réels calculables ont-elles réellement des propriétés de calcul significativement différentes? Supposons que j'utilise l'une des définitions de en.wikipedia.org/wiki/Computable_number , par exemple, un réel calculable est représenté par un programme qui prend une limite d'erreur rationnelle et produit une approximation dans cette limite. Je veux dire "trivial" dans le même sens que le théorème de Rice: une propriété qui s'applique à tous les réels calculables ou à aucun d'entre eux. Il est vrai que chaque nombre peut être représenté par plusieurs programmes, mais cela vaut également pour les fonctions partielles.
Shachaf
@Shachaf C'est plus "trivial" que ne l'exige le théorème de Rice. Les propriétés "syntaxiques" sont également triviales - par exemple "a au moins 4 états accessibles depuis l'état initial", "a un graphe d'état connecté", "n'a pas de transition qui écrit X sur la bande", etc. - et ils ont besoin ne s'applique pas à chaque machine.
Boyd Stephen Smith Jr.
@DavidRicherby Oui, je pense que la distinction est nécessaire. Si vous êtes capable de travailler exclusivement avec des représentations totales ou productives, vous avez plus de pouvoir.
Boyd Stephen Smith Jr.
Le théorème de Rice concerne les propriétés des fonctions partielles, pas les algorithmes qui les calculent. De même, je pose des questions sur les propriétés des réels calculables, pas sur les programmes qui les calculent.
Shachaf