Paradoxon

13/09/2007 - 12:24 von Frank Buss | Report spam
Ich habe gerade in einem Programmiererhandbuch, im Zusammenhang mit der
Erklàrung bool'scher Algebra, gelesen, daß Paradoxa nur im Zusammenhang mit
Selbstbezüglichkeit auftreten, was auch der Wikipedia-Artikel für den
Bereich, der am besten die Mathematik trifft, schreibt. Dort steht sogar
"Widersprüchlichkeit als Folge der Negation von Selbstbezüglichkeit".

Ein bekanntes Beispiel ist die Russellsche Antinomie, die man u.a. durch
das Fundierungsaxiom ausschließt. Auch ein Beweise des Gödelschen
Unvollstàndigkeitssatzes verwendet im Beweis eine negierte
Selbstbezüglichkeit. Im Bereich der Informatik gibt es etwas àhnliches mit
dem Halteproblem.

Ich frage mich jetzt, ob es nicht möglich wàre, ein formales System zu
definieren, was solche Selbstbezüglichkeiten nicht erlaubt oder verbietet
und dennoch komplex genug ist, um sinnvolle Dinge damit anstellen zu
können.

Ein Beispiel wàre eine Programmiersprache. In vielen Sprachen kann man z.B.
ein Array definieren. Es gibt aber keine Schreibweise dafür, ein Array zu
definieren, indem man sagt, welche Elemente dieses Array *nicht* enthàlt.
Somit ist das Russelsche Paradoxon in vielen Programmiersprachen erst gar
nicht formulierbar. Dennoch kann man mit den betroffenen Sprachen viele
sinnvolle Dinge anstellen.

Auf ein mathematisches System angewendet: wie könnten da die grundlegenden
Symbole, Regeln um diese Symbole zu Wörtern und Sàtzen zusammenzufassen,
aussehen, und welche Bedeutungen und Anwendungen könnte es haben? Wàre ein
Beispiel für so ein System der mathematische Konstruktivismus?
(http://de.wikipedia.org/wiki/Konstr...Mathematik) Oder habe ich noch
irgendwo einen Denkproblem bei der Unterscheidung zwischen dem, was
geschrieben steht und der Bedeutung (also bei Computerprogrammen z.B. dem
Programm und der Ausführung des Programms) ?

Frank Buss, fb@frank-buss.de
http://www.frank-buss.de, http://www.it4-systems.de
 

Lesen sie die antworten

#1 Micha Schneider
13/09/2007 - 13:06 | Warnen spam
Frank Buss schrieb:

Es gibt aber keine Schreibweise dafür, ein Array zu definieren,
indem man sagt, welche Elemente dieses Array *nicht* enthàlt.



Wie willst du denn z.B. alle n \in N in einem endlichen Array
unterbringen? Falls du das geschafft hast, dann dürfte es nicht
weiter schwierig sein eine Vorkehrung zu treffen, so, daß z.B. die
Null nicht rein darf, z.B. indem du (in 'objektorientierten' C++)
den Array-Operator '[]' überlàdst.

Anderenfalls mußt du eben (z.B. eine abstrakte) Klasse definieren,
die deine Konventionen codiert, z.B. eine Klasse Intergers, die per
Konstruktion alle N ausser der Null enthàlt und dann z.B. bool
Intergers::IsElementOf(int a) {return a==0?false:true;} formulieren
(und den Konstruktor sowie Ladeoperator 'leer' lassen).

Somit ist das Russelsche Paradoxon in vielen
Programmiersprachen erst gar nicht formulierbar.



Dieses Array enthàlt sich selbst: int& a[], a[0] = &a;

Wahrscheinlich làßt sich ('irgendwie') alles codieren, was
sich mathematisch formulieren làßt, jedenfalls fàllt mir
kein Gegenbeispiel ein.

Ähnliche fragen