diff --git a/htroot/mediawiki_p.html b/htroot/mediawiki_p.html new file mode 100644 index 000000000..9b323922b --- /dev/null +++ b/htroot/mediawiki_p.html @@ -0,0 +1,9 @@ + + + + #[title]# + + + #[page]# + + \ No newline at end of file diff --git a/htroot/mediawiki_p.java b/htroot/mediawiki_p.java new file mode 100644 index 000000000..1e46c266f --- /dev/null +++ b/htroot/mediawiki_p.java @@ -0,0 +1,76 @@ +// mediawiki.java +// (C) 2007 by Michael Peter Christen; mc@yacy.net, Frankfurt a. M., Germany +// first published 2007 on http://yacy.net +// +// This is a part of YaCy, a peer-to-peer based web search engine +// +// $LastChangedDate: 2006-04-02 22:40:07 +0200 (So, 02 Apr 2006) $ +// $LastChangedRevision: 1986 $ +// $LastChangedBy: orbiter $ +// +// LICENSE +// +// This program is free software; you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation; either version 2 of the License, or +// (at your option) any later version. +// +// This program is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. +// +// You should have received a copy of the GNU General Public License +// along with this program; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + +import java.io.File; +import java.io.IOException; + +import de.anomic.http.httpRequestHeader; +import de.anomic.plasma.plasmaSwitchboard; +import de.anomic.server.serverObjects; +import de.anomic.server.serverSwitch; +import de.anomic.tools.mediawikiIndex; + +public class mediawiki_p { + + //http://localhost:8080/mediawiki_p.html?dump=wikipedia.de.xml&title=Kartoffel + public static serverObjects respond(final httpRequestHeader header, serverObjects post, final serverSwitch env) throws IOException { + final plasmaSwitchboard sb = (plasmaSwitchboard) env; + final serverObjects prop = new serverObjects(); + prop.put("title", ""); + prop.put("page", ""); + + if (post == null) { + return post; + } + + String dump = post.get("dump", null); + String title = post.get("title", null); + if (dump == null || title == null) return post; + + + File dumpFile = new File(sb.getRootPath(), "DATA/HTCACHE/mediawiki/" + dump); + if (!dumpFile.exists()) return post; + mediawikiIndex.checkIndex(dumpFile); + mediawikiIndex.wikirecord w = mediawikiIndex.find(title.replaceAll(" ", "_"), mediawikiIndex.idxFromWikimediaXML(dumpFile)); + if (w == null) { + return post; + } + String page = new String(mediawikiIndex.read(dumpFile, w.start, (int) (w.end - w.start)), "UTF-8"); + int p = page.indexOf("', p); + if (p < 0) return prop; + p++; + int q = page.lastIndexOf(""); + if (q < 0) return prop; + page = page.substring(p, q); + + prop.putHTML("title", title); + prop.putWiki("page", page); + + return prop; + } +} diff --git a/source/de/anomic/server/serverCodings.java b/source/de/anomic/server/serverCodings.java index 000b4b6fd..aa01eaea2 100644 --- a/source/de/anomic/server/serverCodings.java +++ b/source/de/anomic/server/serverCodings.java @@ -25,13 +25,13 @@ package de.anomic.server; -import java.io.BufferedInputStream; import java.io.ByteArrayInputStream; import java.io.File; import java.io.FileInputStream; import java.io.InputStream; import java.io.UnsupportedEncodingException; import java.security.MessageDigest; +import java.security.NoSuchAlgorithmException; import java.util.Collections; import java.util.ConcurrentModificationException; import java.util.HashMap; @@ -42,6 +42,13 @@ import java.util.Properties; import java.util.Set; import java.util.StringTokenizer; import java.util.Map.Entry; +import java.util.concurrent.ArrayBlockingQueue; +import java.util.concurrent.BlockingQueue; +import java.util.concurrent.Callable; +import java.util.concurrent.ExecutionException; +import java.util.concurrent.ExecutorService; +import java.util.concurrent.Executors; +import java.util.concurrent.Future; public final class serverCodings { @@ -112,26 +119,145 @@ public final class serverCodings { return null; } + /* public static byte[] encodeMD5Raw(final File file) { - try { - final MessageDigest digest = MessageDigest.getInstance("MD5"); - digest.reset(); - final InputStream in = new BufferedInputStream(new FileInputStream(file), 2048); - final byte[] buf = new byte[2048]; - int n; - while ((n = in.read(buf)) > 0) digest.update(buf, 0, n); - in.close(); - // now compute the hex-representation of the md5 digest - return digest.digest(); - } catch (final java.security.NoSuchAlgorithmException e) { - System.out.println("Internal Error at md5:" + e.getMessage()); - } catch (final java.io.FileNotFoundException e) { - System.out.println("file not found:" + file.toString()); - e.printStackTrace(); - } catch (final java.io.IOException e) { - System.out.println("file error with " + file.toString() + ": " + e.getMessage()); - } - return null; + try { + final MessageDigest digest = MessageDigest.getInstance("MD5"); + digest.reset(); + // we read directly from a FileInputStream + final FileInputStream in = new FileInputStream(file); + int a = in.available(); + if (a <= 0) a = 4096; + long free = Runtime.getRuntime().freeMemory(); + if (a > free / 4) a = (int) (free / 4); + final byte[] buf = new byte[a]; + int n; + while ((n = in.read(buf)) > 0) digest.update(buf, 0, n); + in.close(); + // now compute the hex-representation of the md5 digest + return digest.digest(); + } catch (final java.security.NoSuchAlgorithmException e) { + System.out.println("Internal Error at md5:" + e.getMessage()); + } catch (final java.io.FileNotFoundException e) { + System.out.println("file not found:" + file.toString()); + e.printStackTrace(); + } catch (final java.io.IOException e) { + System.out.println("file error with " + file.toString() + ": " + e.getMessage()); + } + return null; + } + */ + + public final static ExecutorService service = Executors.newFixedThreadPool(Runtime.getRuntime().availableProcessors() + 1); + + public static byte[] encodeMD5Raw(final File file) { + FileInputStream in; + try { + in = new FileInputStream(file); + } catch (final java.io.FileNotFoundException e) { + System.out.println("file not found:" + file.toString()); + e.printStackTrace(); + return null; + } + + // create a concurrent thread that consumes data as it is read + // and computes the md5 while doing IO + md5DataConsumer md5consumer = new md5DataConsumer(1024 * 64, 8); + Future md5result = service.submit(md5consumer); + + filechunk c; + try { + while (true) { + c = md5consumer.nextFree(); + c.n = in.read(c.b); + if (c.n <= 0) break; + md5consumer.consume(c); + } + in.close(); + } catch (final java.io.IOException e) { + System.out.println("file error with " + file.toString() + ": " + e.getMessage()); + md5consumer.consume(md5DataConsumer.poison); + return null; + } finally { + // put in poison into queue to tell the consumer to stop + md5consumer.consume(md5DataConsumer.poison); + } + + // return the md5 digest from future task + try { + return md5result.get().digest(); + } catch (InterruptedException e) { + e.printStackTrace(); + } catch (ExecutionException e) { + e.printStackTrace(); + } + return null; + } + + private static class filechunk { + public byte[] b; + public int n; + public filechunk(int len) { + b = new byte[len]; + n = 0; + } + } + + private static class md5DataConsumer implements Callable { + + private BlockingQueue empty; + private BlockingQueue filed; + private static filechunk poison = new filechunk(0); + private MessageDigest digest; + + public md5DataConsumer(int bufferSize, int bufferCount) { + empty = new ArrayBlockingQueue(bufferCount); + filed = new ArrayBlockingQueue(bufferCount); + // fill the empty queue + for (int i = 0; i < bufferCount; i++) empty.add(new filechunk(bufferSize)); + // init digest + try { + digest = MessageDigest.getInstance("MD5"); + } catch (NoSuchAlgorithmException e) { + System.out.println("Internal Error at md5:" + e.getMessage()); + } + digest.reset(); + } + + public void consume(filechunk c) { + try { + filed.put(c); + } catch (InterruptedException e) { + e.printStackTrace(); + } + } + + public filechunk nextFree() { + try { + return empty.take(); + } catch (InterruptedException e) { + e.printStackTrace(); + return null; + } + } + + public MessageDigest call() { + try { + filechunk c; + while(true) { + c = filed.take(); + if (c == poison) break; + digest.update(c.b, 0, c.n); + empty.put(c); + } + } catch (InterruptedException e) { + e.printStackTrace(); + } + filed.clear(); + empty.clear(); + return digest; + } + } private static byte[] encodeMD5Raw(final byte[] b) { @@ -240,7 +366,7 @@ public final class serverCodings { public static void main(final String[] s) { if (s.length == 0) { - System.out.println("usage: -[ec|dc|es|ds|s2m] "); + System.out.println("usage: -[md5|s2m] "); System.exit(0); } @@ -248,6 +374,18 @@ public final class serverCodings { // generate a b64 decoding from a given string System.out.println(string2map(s[1], ",").toString()); } + + // usage example: + // java -classpath classes de.anomic.server.serverCodings -md5 DATA/HTDOCS/mediawiki/dewiki-latest-pages-articles.xml + // java -classpath classes de.anomic.server.serverCodings -md5 readme.txt + // compare with: + // md5 readme.txt + if (s[0].equals("-md5")) { + // generate a b64 decoding from a given string + File f = new File(s[1]); + System.out.println("MD5 (" + f.getName() + ") = " + encodeMD5Hex(f)); + } + service.shutdown(); } } diff --git a/source/de/anomic/tools/md5DirFileFilter.java b/source/de/anomic/tools/md5DirFileFilter.java deleted file mode 100644 index 2ed189415..000000000 --- a/source/de/anomic/tools/md5DirFileFilter.java +++ /dev/null @@ -1,38 +0,0 @@ -package de.anomic.tools; -// md5DirFileFilter.java -// ----------------------- -// (C) by Michael Peter Christen; mc@yacy.net -// first published on http://www.anomic.de -// Frankfurt, Germany, 2004, 2005 -// -// This file is contributed by Martin Thelian -// -// $LastChangedDate: 2006-08-06 10:09:39 +0200 (So, 06 Aug 2006) $ -// $LastChangedRevision: 2349 $ -// $LastChangedBy: theli $ -// -// This program is free software; you can redistribute it and/or modify -// it under the terms of the GNU General Public License as published by -// the Free Software Foundation; either version 2 of the License, or -// (at your option) any later version. -// -// This program is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -// GNU General Public License for more details. -// -// You should have received a copy of the GNU General Public License -// along with this program; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - -import java.io.File; -import java.io.FilenameFilter; - - -public class md5DirFileFilter implements FilenameFilter { - - public boolean accept(final File dir, final String name) { - return !(name.startsWith("dir.") || name.endsWith(".md5")); - } - -} diff --git a/source/de/anomic/tools/mediawikiIndex.java b/source/de/anomic/tools/mediawikiIndex.java new file mode 100644 index 000000000..03ae4a298 --- /dev/null +++ b/source/de/anomic/tools/mediawikiIndex.java @@ -0,0 +1,400 @@ +// mediawikiIndex.java +// (C) 2008 by Michael Peter Christen; mc@yacy.net, Frankfurt a. M., Germany +// first published 20.11.2008 on http://yacy.net +// +// This is a part of YaCy, a peer-to-peer based web search engine +// +// $LastChangedDate: 2006-04-02 22:40:07 +0200 (So, 02 Apr 2006) $ +// $LastChangedRevision: 1986 $ +// $LastChangedBy: orbiter $ +// +// LICENSE +// +// This program is free software; you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation; either version 2 of the License, or +// (at your option) any later version. +// +// This program is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. +// +// You should have received a copy of the GNU General Public License +// along with this program; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + +package de.anomic.tools; + +import java.io.BufferedInputStream; +import java.io.BufferedWriter; +import java.io.File; +import java.io.FileInputStream; +import java.io.FileNotFoundException; +import java.io.FileWriter; +import java.io.IOException; +import java.io.InputStream; +import java.io.PrintWriter; +import java.io.RandomAccessFile; +import java.io.UnsupportedEncodingException; +import java.util.concurrent.ArrayBlockingQueue; +import java.util.concurrent.BlockingQueue; +import java.util.concurrent.Callable; +import java.util.concurrent.ExecutionException; +import java.util.concurrent.ExecutorService; +import java.util.concurrent.Executors; +import java.util.concurrent.Future; +import java.util.concurrent.TimeUnit; +import java.util.concurrent.TimeoutException; + +import de.anomic.server.serverByteBuffer; + +/* + * this class provides data structures to read a mediawiki dump file in xml format + * as referenced with xmlns="http://www.mediawiki.org/xml/export-0.3/" + */ + +public class mediawikiIndex { + + private static final byte[] pagestart = "".getBytes(); + private static final byte[] pageend = "".getBytes(); + + public static void checkIndex(File wikimediaxml) { + File idx = idxFromWikimediaXML(wikimediaxml); + if (idx.exists()) return; + new indexMaker(wikimediaxml).start(); + } + + public static class indexMaker extends Thread { + + File wikimediaxml; + public indexMaker(File wikimediaxml) { + this.wikimediaxml = wikimediaxml; + } + + public void run() { + try { + createIndex(this.wikimediaxml); + } catch (IOException e) { + } + } + } + + public static File idxFromWikimediaXML(File wikimediaxml) { + return new File(wikimediaxml.getAbsolutePath() + ".idx.xml"); + } + + public static void createIndex(File dumpFile) throws IOException { + // calculate md5 + //String md5 = serverCodings.encodeMD5Hex(dumpFile); + + // init reader, producer and consumer + PositionAwareReader in = new PositionAwareReader(dumpFile); + ExecutorService service = Executors.newFixedThreadPool(2 /*Runtime.getRuntime().availableProcessors() + 1*/); + indexProducer producer = new indexProducer(100, idxFromWikimediaXML(dumpFile)); + wikiConsumer consumer = new wikiConsumer(100, producer); + Future producerResult = service.submit(consumer); + Future consumerResult = service.submit(producer); + + // read the wiki dump + long start, stop; + while (in.seek(pagestart)) { + start = in.pos() - 6; + in.resetBuffer(); + if (!in.seek(pageend)) break; + stop = in.pos(); + consumer.consume(new wikiraw(in.bytes(), start, stop)); + in.resetBuffer(); + } + + // shut down the services + try { + consumer.consume(wikiConsumer.poison); + try {consumerResult.get(5000, TimeUnit.MILLISECONDS);} catch (TimeoutException e) {} + producer.consume(indexProducer.poison); + if (!consumerResult.isDone()) consumerResult.get(); + producerResult.get(); + } catch (InterruptedException e) { + e.printStackTrace(); + return; + } catch (ExecutionException e) { + e.printStackTrace(); + return; + } + service.shutdown(); + in.close(); + } + + private static class indexProducer implements Callable { + + private BlockingQueue entries; + PrintWriter out; + private static wikirecord poison = new wikirecord("", 0, 0); + int count; + + public indexProducer(int bufferCount, File indexFile) throws IOException { + entries = new ArrayBlockingQueue(bufferCount); + out = new PrintWriter(new BufferedWriter(new FileWriter(indexFile))); + count = 0; + out.println(""); + + } + + public void consume(wikirecord b) { + try { + entries.put(b); + } catch (InterruptedException e) { + e.printStackTrace(); + } + } + + public Integer call() { + wikirecord r; + try { + while(true) { + r = entries.take(); + if (r == poison) { + System.out.println("producer / got poison"); + break; + } + out.println(" "); + out.println(" " + r.title + ""); + out.println(" "); + System.out.println("producer / record start: " + r.start + ", title : " + r.title); + count++; + } + } catch (InterruptedException e) { + e.printStackTrace(); + } + entries.clear(); + out.println(""); + out.close(); + return new Integer(count); + } + + } + + private static class wikiConsumer implements Callable { + + private BlockingQueue entries; + private static wikiraw poison = new wikiraw(new byte[0], 0, 0); + private indexProducer producer; + private int count; + + public wikiConsumer(int bufferCount, indexProducer producer) { + entries = new ArrayBlockingQueue(bufferCount); + this.producer = producer; + count = 0; + } + + public void consume(wikiraw b) { + try { + entries.put(b); + } catch (InterruptedException e) { + e.printStackTrace(); + } + } + + public Integer call() { + wikirecord r; + wikiraw c; + try { + while(true) { + c = entries.take(); + if (c == poison) { + System.out.println("consumer / got poison"); + break; + } + try { + r = new wikirecord(c.b, c.start, c.end); + producer.consume(r); + System.out.println("consumer / record start: " + r.start + ", title : " + r.title); + count++; + } catch (RuntimeException e) {} + } + } catch (InterruptedException e) { + e.printStackTrace(); + } + entries.clear(); + return new Integer(count); + } + + } + + private static class wikiraw { + public long start, end; + public byte[] b; + public wikiraw(byte[] b, long start, long end) { + this.b = b; + this.start = start; + this.end = end; + } + } + + public static class wikirecord { + public long start, end; + public String title; + public wikirecord(String title, long start, long end) { + this.title = title; + this.start = start; + this.end = end; + } + public wikirecord(byte[] chunk, long start, long end) { + String s; + try { + s = new String(chunk, "UTF-8"); + } catch (UnsupportedEncodingException e) { + throw new RuntimeException(e.getMessage()); + } + int t0 = s.indexOf(""); + if (t0 >= 0) { + int t1 = s.indexOf("", t0); + if (t1 >= 0) { + this.title = s.substring(t0 + 7, t1); + } else { + throw new RuntimeException("no title end in record"); + } + } else { + throw new RuntimeException("no title start in record"); + } + + this.start = start; + this.end = end; + } + } + + private static class PositionAwareReader { + + private InputStream is; + private long seekpos; + private serverByteBuffer bb; + + public PositionAwareReader(File dumpFile) throws FileNotFoundException { + this.is = new BufferedInputStream(new FileInputStream(dumpFile), 64 *1024); + this.seekpos = 0; + this.bb = new serverByteBuffer(); + } + + public void resetBuffer() { + if (bb.length() > 10 * 1024) bb = new serverByteBuffer(); else bb.clear(); + } + + public boolean seek(byte[] pattern) throws IOException { + int pp = 0; + int c; + while ((c = is.read()) >= 0) { + seekpos++; + bb.append(c); + if (pattern[pp] == c) pp++; else pp = 0; + if (pp == pattern.length) return true; + } + return false; + } + + public long pos() { + return seekpos; + } + + public byte[] bytes() { + return bb.getBytes(); + } + + public void close() { + try { + is.close(); + } catch (IOException e) { + e.printStackTrace(); + } + } + } + + public static byte[] read(File f, long start, int len) { + try { + RandomAccessFile raf = new RandomAccessFile(f, "r"); + byte[] b = new byte[len]; + raf.seek(start); + raf.read(b); + raf.close(); + return b; + } catch (IOException e) { + e.printStackTrace(); + } + return null; + } + + public static wikirecord find(String title, File f) throws IOException { + PositionAwareReader in = new PositionAwareReader(f); + long start; + String m = "" + title + ""; + String s; + while (in.seek("= 0) { + // we found the record + //System.out.println("s = " + s); + int p = s.indexOf("start=\""); + if (p < 0) return null; + p += 7; + int q = s.indexOf('"', p + 1); + if (q < 0) return null; + start = Long.parseLong(s.substring(p, q)); + p = s.indexOf("length=\"", q); + if (p < 0) return null; + p += 8; + q = s.indexOf('"', p + 1); + if (q < 0) return null; + int length = Integer.parseInt(s.substring(p, q)); + //System.out.println("start = " + start + ", length = " + length); + return new wikirecord(title, start, start + length); + } + } + return null; + } + + public static void main(String[] s) { + if (s.length == 0) { + System.out.println("usage:"); + System.out.println(" -index "); + System.out.println(" -read "); + System.out.println(" -find <wikipedia-dump>"); + System.exit(0); + } + + if (s[0].equals("-index")) { + try { + createIndex(new File(s[1])); + } catch (IOException e) { + e.printStackTrace(); + } + } + + if (s[0].equals("-read")) { + long start = Integer.parseInt(s[1]); + int len = Integer.parseInt(s[2]); + try { + System.out.println(new String(read(new File(s[3]), start, len), "UTF-8")); + } catch (UnsupportedEncodingException e) { + e.printStackTrace(); + } + } + + if (s[0].equals("-find")) { + try { + wikirecord w = find(s[1], new File(s[2] + ".idx.xml")); + if (w == null) { + System.out.println("not found"); + } else { + System.out.println(new String(read(new File(s[2]), w.start, (int) (w.end - w.start)), "UTF-8")); + } + } catch (IOException e) { + e.printStackTrace(); + } + + } + } + +} diff --git a/testwiki.xml b/testwiki.xml new file mode 100644 index 000000000..6bb171275 --- /dev/null +++ b/testwiki.xml @@ -0,0 +1,545 @@ +<mediawiki xmlns="http://www.mediawiki.org/xml/export-0.3/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-insta +nce" xsi:schemaLocation="http://www.mediawiki.org/xml/export-0.3/ http://www.mediawiki.org/xml/export-0.3.xsd +" version="0.3" xml:lang="de"> + <siteinfo> + <sitename>Wikipedia</sitename> + <base>http://de.wikipedia.org/wiki/Wikipedia:Hauptseite</base> + <generator>MediaWiki 1.14alpha</generator> + <case>first-letter</case> + <namespaces> + <namespace key="-2">Media</namespace> + <namespace key="-1">Spezial</namespace> + <namespace key="0" /> + <namespace key="1">Diskussion</namespace> + <namespace key="2">Benutzer</namespace> + <namespace key="3">Benutzer Diskussion</namespace> + <namespace key="4">Wikipedia</namespace> + <namespace key="5">Wikipedia Diskussion</namespace> + <namespace key="6">Bild</namespace> + <namespace key="7">Bild Diskussion</namespace> + <namespace key="8">MediaWiki</namespace> + <namespace key="9">MediaWiki Diskussion</namespace> + <namespace key="10">Vorlage</namespace> + <namespace key="11">Vorlage Diskussion</namespace> + <namespace key="12">Hilfe</namespace> + <namespace key="13">Hilfe Diskussion</namespace> + <namespace key="14">Kategorie</namespace> + <namespace key="15">Kategorie Diskussion</namespace> + <namespace key="100">Portal</namespace> + <namespace key="101">Portal Diskussion</namespace> + </namespaces> + </siteinfo> + <page> + <title>Gottesbeweis + 35094 + + 51637191 + 2008-10-09T04:25:49Z + + Zorrobot + 564937 + + + Bot: Ändere: [[pl:Dowodzenie istnienia Boga]] + Ein '''Gottesbeweis''' ist der Versuch, die [[Existenz]] eines [[Gott]]es od +er [[Ursprung]]sprinzips – teilweise unter Einbeziehung [[Empirie|empirischer]] Beobachtungen – zu [[Beweis ( +Logik)|beweisen]], oder zumindest Hinweise dafür zu finden. Diese [[Rationalität|rationale]] Methode steht da +mit zumindest tendenziell im Gegensatz zu jeder Form eines religiösen [[Irrationalismus]], der die Erkenntnis + [[Gott]]es als [[Mysterium]] versteht, das sich der Mitteilung und logischen Analyse wesentlich entzieht. Ei +n allgemein anerkannter Beweis für die Existenz eines Gottes konnte bisher nicht erbracht werden. Gottesbewei +se beziehen sich nicht notwendigerweise auf einen bestimmten Gott in einer bestimmten Religion, sind aber his +torisch im Anschluss an die [[Metaphysik]] der griechischen [[Philosophie]] ([[Platon]], [[Aristoteles]]) vor + allem im Geltungsbereich des [[Islam]]s, des [[Judentum]]s und [[Christentum]]s systematisch ausformuliert w +orden. + +== Einleitung == +=== Geschichte === +Die neuzeitliche Einschätzung von Gottesbeweisen beruht weitgehend auf [[Immanuel Kant]]s Kritik an ihnen. Ka +nts ''[[Kritik der reinen Vernunft]]'' beschränkt mögliche Erkenntnisse über Sachverhalte auf den Bereich des + sinnlich Wahrnehmbaren. Die klassischen Gottesbeweise sind nach dieser Auffassung nicht mehr schlüssig. Dies + betraf speziell die mittelalterlichen ([[Scholastik|scholastischen]]) Gottesbeweise, darunter den [[Ontologi +e|ontologischen]] Gottesbeweis. Spätere [[Religionskritik]]er wie [[Ludwig Feuerbach]], nach dessen [[Projekt +ionstheorie]] Gottes Existenz eine Fiktion ist, versuchten zu beweisen, dass Gott nicht existiere. + +Trotz dieser neuzeitlichen Kritik vertraten [[Neuscholastik]]er und vertreten einige Religionsphilosophen auc +h heute noch ähnliche Denkfiguren, etwa im Rahmen einer [[Natürliche Theologie|Natürlichen Theologie]]. Ander +erseits greifen Philosophen des 20. Jahrhunderts wie der analytische Philosoph [[John Leslie Mackie]] Kants K +ritik auf. Andere analytische Philosophen wie [[Alvin Plantinga]] oder [[Richard Swinburne]] dagegen versuche +n eine neue Formulierung von Gottesbeweisen, darunter auch des ontologischen Gottesbeweises. + +=== Motive === +In der vorchristlichen [[Antike]] und im christlichen [[Mittelalter]] spielten Gottesbeweise für das Leben de +r Gläubigen eine andere Rolle. Die Existenz von Göttern oder eines [[Gott]]es stand meist nicht in Frage. Zud +em war sie in frühen staatlichen Gesellschaften oft zusammen mit der jeweiligen Staatsreligion [[Doktrin|dokt +rinär]] festgeschrieben. Infragestellung wurde oft als [[Atheismus|Gottlosigkeit]] mit erheblichen Sanktionen + belegt. Die theoretischen Überlegungen sollten dann lediglich die vorhandenen Grundüberzeugungen stützen ode +r präzisieren. + +Viele Frühscholastiker betonen die Notwendigkeit einer Vermittlung von Vernunft und Glaube. Wesentliches Mome +nt dafür ist die Auffassung, dass der Vernunft die Existenz Gottes einsichtig sei. In diesem Sinne hatten ber +eits arabische (besonders kalamitische) und jüdische Denker Gottesbeweise entwickelt. + +Ein weiteres Motiv für Gottesbeweise wird die Bekehrung von [[Heidentum|Heiden]]. Durch politische Machtmecha +nismen lässt sich in heidnisch geprägten Gesellschaften eine bestimmte Religiosität kaum erzwingen. Wo zudem +die [[Bibel]] noch nicht als unumstößliche Wahrheit anerkannt ist, kann nicht offenbarungstheologisch argumen +tiert werden. + +Die eigentliche Zeit der Gottesbeweise war die [[Frühe Neuzeit]] und die deutsche [[Zeitalter der Aufklärung| +Aufklärung]]. Für [[Deismus|deistische]] Aufklärer sollten die Gottesbeweise eine auf der Vernunft basierende + Religion etablieren. Diese sogenannte ''natürliche Religion'' sollte ohne irgendwelche [[Offenbarung]]seleme +nte auskommen. Diese Vorstellung wurde besonders von Hume kritisiert. Mit der einflussreichen Kritik Kants an + den Gottesbeweisen verlieren sie in philosophischen Diskussionen an Bedeutung. Auf anderer Basis, anknüpfend + beim [[Subjekt (Philosophie)|Subjekt]], versuchen etwa [[Friedrich Schleiermacher]] und [[Søren Kierkegaard] +] eine Rehabilitierung von Gottesbeweisen. Mit voranschreitendem Entstehen einer [[Säkularismus|säkularisiert +en]] Gesellschaft und philosophischen Vorbehalten gegen ihre Durchführbarkeit sind Gottesbeweise weitgehend n +ur für religiöse oder speziell philosophisch interessierte Kreise bedeutsam. + +== Typen von Gottesbeweisen == +Die Gottesbeweise lassen sich grundsätzlich in apriorische und aposteriorische Beweise einteilen. Als klassis +cher [[apriori]]scher Gottesbeweis gilt der ontologische Gottesbeweis des [[Anselm von Canterbury]], da er di +e Existenz Gottes aus dessen Begriff zu beweisen versucht. Die sog. „fünf Wege“ in der Tradition des [[Thomas + von Aquin]] dagegen sind [[A posteriori|aposteriorische]] Gottesbeweise. Thomas unterscheidet den Aufweis Go +ttes aus der Bewegung (''ex parte motus''), aus der Wirkursache (''ex ratione causae efficientis''), aus dem +Möglichen und Notwendigen (''ex possibili et necessario''), aus den Graden der Vollkommenheit (''ex gradibus' +') und aus der [[Teleologie]] (''ex gubernatione rerum''). Jeder dieser Wege geht von Erfahrungstatsachen aus +, d.h. er enthält empirische Prämissen. Diese können in der Argumentation Thomas’ nicht zugleich wahr und ihr +e Konklusion, die Existenz Gottes, falsch sein. + +=== Der kausale Gottesbeweis === +==== Argumentation ==== +Der kausale Gottesbeweis geht davon aus, dass alles, was in dieser Welt existiert, [[Kontingenz (Philosophie) +|kontingent]] ist. Da man die Reihe der Ursachen nicht unendlich fortsetzen könne, müsse eine erste nicht kon +tingente Ursache ([[causa prima]]) existieren. Schon [[Aristoteles]] [[Postulat|postulierte]] eine solche ers +te Ursache, die selbst unverursacht sei, und nannte sie "das erste unbewegte Bewegende" (πρῶτον κιν +οῦν ἀκίνητον) oder den "unbewegten Beweger". Viele mittelalterliche Denker, auch [[Thomas von Aquin +]], identifizierten diesen mit Gott. Die Argumentation des Aristoteles liegt auch dem "[[kosmologisch]]e +n Gottesbeweis" (s. u.) zugrunde und wird von manchen zu einem "Kontingenzbeweis" (s. u.) vera +llgemeinert. + +==== Kritik ==== +Varianten des kausalen Gottesbeweises wurden vielfach der Kritik unterzogen. Typische Einwände sind etwa die +folgenden: +* Der kausale Gottesbeweis sei [[Inkonsistenz|inkonsistent]]. Bei der [[Konklusion]], dass ein bestimmter Got +t aller Dinge Anfang ist, werde die [[Prämisse]] verworfen, dass alles eine Ursache hat. Schränke man, um die +s zu vermeiden, die Prämisse darauf ein, dass alles ''Kontingente'' eine Ursache hat, mache eine solche Refor +mulierung den Beweis [[Zirkelschluss|zirkulär]]. +* Aus dem Prinzip, dass alles eine Ursache hat, könne nicht geschlossen werden, dass es eine ''erste'' Ursach +e gibt. Wer so argumentiere, breche die [[Kausalität|Kausalkette]] willkürlich ab. Denkbar seien demgegenüber + verschiedene Alternativen: Zum einen könne die Kausalitätskette ins Unendliche fortgesetzt werden. Es könne +beispielsweise mehrere Götter geben, die einander der Reihe nach erschaffen (dies wendet z.B. [[Bertrand Russ +ell]] ein). Zum anderen könne das Universum ewig existieren, was nach einigen kosmologischen Modellen mit der + [[Urknall]]theorie vereinbar sei. Auch lassen bestimmte kosmologische Modelle ([[Raumzeit]]-Topologien) in s +ich geschlossene Kausalketten zu. Eine erste Ursache anzunehmen wäre demnach keine logische oder metaphysisch +e Notwendigkeit, sondern entsprünge unserer Art, die Welt wahrzunehmen. +* Kant verweist darauf, dass der kausale Gottesbeweis aus den oben genannten Gründen ein notwendig Existieren +des, also einen ontologischen Beweis vorausetzt, womit dem kausalen Beweis keine Beweiskraft im strengen Sinn + zukommt. Außerdem nimmt der Beweis an, dass jedes Ereignis in der Welt eine Ursache habe, um dies dann auf d +ie Welt als solche auszudehnen, indem er annimmt, dass die Welt eine Ursache habe. Dass dies zulässig ist, is +t ebenfalls unbewiesen. Kant streitet es sogar ab, was er damit begründet, dass die Welt ein Transzendentalbe +griff sei. +* Verschiedene (makroskopische) Systeme zeigten unter bestimmten Bedingungen "spontan" ohne Auslöse +r auftretende Phänomene, Strukturen oder Entitäten ([[Selbstorganisation]], [[Strukturbildung]]prozesse, [[Em +ergenz]]). Diese Entitäten könnten wiederum die Grundbausteine für übergeordnete Strukturen bilden. Dies mach +e es prinzipiell denkbar, dass nicht alles auf eine ''erste'' Ursache zurückgeht. Diese erste Ursache könne s +ich auch in einem ungeformten Ur-Substrat verlieren. Vertreter der Gottesbeweise können darauf bestehen, dass + ein solches "Ur-Substrat" formbar und damit kontingent ist und nicht ursachenlos existieren könnte +. +* Kritisiert wird auch der Kausalitätsbegriff: Entfernt man sich von der Annahme, dass Ursachen stets ihrer W +irkung ''zeitlich vorausliegen'', ist nicht mehr beweisbar, dass eine erste Ursache notwendig existieren muss +. +* Selbst wenn man den Beweisgang akzeptiert, folge daraus nur, dass es eine erste Ursache gibt – nicht aber, +dass diese mit Gott gleichzusetzen ist. Die Annahme, dass Gott ohne Grund existieren könne, könne ebenso gut +auf das Universum übertragen werden. Befürworter des kausalen Gottesbeweises (besonders in der [[Natürliche T +heologie|Natürlichen Theologie]]) beanspruchen demgegenüber, Gott als Erstursache identifizieren zu können. + +=== Der ontologische Gottesbeweis === + +Die erste bekannte Version des [[Ontologie|ontologischen]] Gottesbeweises wurde von [[Anselm von Canterbury]] + (1033-1109) im [[Proslogion]]<ref>[http://www.ub.uni-freiburg.de/referate/04/verweyen/anselm8.htm Kapi +tel II-IV]</ref> formuliert, danach nicht zuletzt von [[René Descartes]] (1596-1650). Seinen Namen erhi +elt der Beweis nach dem darin vorgenommenen [[Schlussfolgerung|Schluss]] von der [[Logik|logisch]]-begrifflic +hen Ebene zur Ebene des [[Sein (Philosophie)|Seins]] ([[Griechische Sprache|griech.]] ''to on'', Gen. ''ontos +''). + +==== Argumentation ==== +Ausgangspunkt des Beweises bei Anselm ist der im gläubigen Nachdenken („[[Intellectus fidei|fides quaerens in +tellectum]]“) gefundene „Begriff“ Gottes als desjenigen, „worüber hinaus nichts Größeres (Vollkommeneres) ged +acht werden kann“ („quo nihil maius cogitari potest“). +Der denkende Nachvollzug dieses „Begriffs“ führe auch den (noch) nicht Gläubigen zur Erkenntnis, dass dieses +„worüber hinaus nichts Größeres gedacht werden kann“ nicht nur existiert, sondern notwendig existiert, d. h. +dass nicht einmal gedacht werden kann, es existiere nicht, ohne dass das zu einem logischen Widerspruch führe +n würde. + +Der Argumentationsgang Anselms lässt sich in seiner logischen Struktur wie folgt zusammenfassen: +<ref>Gekürzt wiedergegeben nach Edgar Morscher: ''Was sind und was sollen die Gottesbeweise? Bemerkunge +n zu Anselms Gottesbeweis(en)'', in: Friedo Ricken (Hrsg.): ''Klassische Gottesbeweise in der Sicht der gegen +wärtigen Logik und Wissenschaftstheorie.'', S. 64f.</ref> + +# ''Das, worüber hinaus nichts Größeres gedacht werden kann'', existiert nicht in Wirklichkeit, sondern nur i +m Verstand [Annahme des Gegenteils]. +# Wenn ''das, worüber hinaus nichts Größeres gedacht werden kann'', nicht in Wirklichkeit, sondern nur im Ver +stand existiert, dann kann etwas gedacht werden, das größer ist als ''das, worüber hinaus nichts Größeres ged +acht werden kann''. +# Wenn etwas gedacht werden kann, das größer ist als ''das, worüber hinaus nichts Größeres gedacht werden kan +n'', dann ist ''das, worüber hinaus nichts Größeres gedacht werden kann'', etwas, worüber hinaus Größeres ged +acht werden kann. +# ''Das, worüber hinaus nichts Größeres gedacht werden kann'', ist etwas, worüber hinaus Größeres gedacht wer +den kann [aus (1), (2) und (3) durch zweimalige Anwendung des [[Modus Ponens]]]. +# Daher: ''Das, worüber hinaus nichts Größeres gedacht werden kann'' [für Anselm identisch mit Gott], existie +rt in Wirklichkeit und nicht nur im Verstand [aus (1)-(4) durch [[Indirekter Beweis|indirekten Beweis]]]. + +==== Kritik ==== +Bereits der Mönch Gaunilo, ein Zeitgenosse Anselms, dann [[Thomas von Aquin]] kritisierten dessen Version des + ontologischen Gottesbeweises. + +Gaunilo hält Anselm entgegen, man könne aus dem Begriff nicht auf die Existenz des damit bezeichneten Sachver +halts schließen. Der (bloße) Begriff einer "vollkommenen Insel" etwa beweise nicht (schon) deren ta +tsächliche Existenz. Anselm erwidert, die Logik seiner Argumentation lasse sich auf nichts anderes anwenden a +ls "das, worüber hinaus nichts Größeres gedacht werden kann".<ref>Hansjürgen Verweyen: ''Nach + Gott fragen''. Anselms Gottesbegriff als Anleitung. Essen: Ludgerus 1978. (Christliche Strukturen in der mod +ernen Welt. Hg. v. Wilhelm Plöger; 23), S. 38. [http://www.ub.uni-freiburg.de/referate/04/verweyen/anselm5.ht +m Online-Text]</ref> + +Thomas von Aquin versucht den ontologischen Gottesbeweis in seiner [[Summa contra gentiles]] (Buch I, Kapitel + 11) zu widerlegen, freilich ohne Anselm explizit als Urheber dieses Gottesbeweises zu nennen. Nach Thomas vo +n Aquin ist der Begriff von Gott als etwas, über das hinaus nichts Größeres gedacht werden kann, nicht unmitt +elbar einleuchtend. Daraus, dass dieser verstanden wird, folge lediglich, dass Gott im Verstande ist, nicht a +ber, dass er tatsächlich existiert. Zudem habe Anselm nicht unterschieden zwischen dem, was schlechthin einle +uchtend (per se notum simpliciter) und dem, was für den Menschen unmittelbar einleuchtend (per se notum quoad + nos) ist. Da der Mensch das Wesen (essentia) Gottes mit seinem menschlichen Verstand gar nicht ergreifen kan +n, könne man auch nicht damit argumentieren, dass Gottes Existenz unmittelbar einleuchtend sei, da sein Sein +ja sein Wesen sei (esse est essentia). + +In der Neuzeit hat [[Gottfried Wilhelm Leibniz|Leibniz]] die [[Descartes]]'sche Variante des Gottesbeweises d +ahingehend korrigiert, dass zunächst die Möglichkeit der Existenz Gottes zu zeigen sei, unter dieser Vorausse +tzung aber dem Beweis zugestimmt. + +Die bekannteste neuzeitliche Kritik des ontologischen Gottesbeweises stammt von [[Immanuel Kant]]. In seiner +[[Kritik der reinen Vernunft]] (1. Aufl. 1781, 2. Aufl. 1787) versucht er zu zeigen, dass der ontologische Be +weis verschiedene Kategorien vermenge. So werde der [[Grammatik|grammatische]] Begriff ''sein'' wie ein Eigen +schaftswort verwendet. Weiterhin setze die Definition des vollkommenen Wesens dessen Existenz bereits voraus. + Zu sagen, dass ein Ding ''ist'' oder ''existiert'', füge ihm nichts (keine Eigenschaft) hinzu. Der einzige B +eweis für eine Existenz sei die Erfahrung. Man wiederhole daher nur, dass man ''erfahren'' hat, dass dieses D +ing existiert. Der ontologische Beweis sei daher schlicht ein [[Zirkelschluss]] oder eine [[Tautologie (Logik +)|Tautologie]]. Da Gott keine objektive Realität besitze, liege kein Widerspruch in der Verneinung von Gottes + Existenz, es werde damit nicht einmal die Vorstellung des Wesens an sich geleugnet. Wenn aber der Satz " +;Ein vollkommenes Wesen existiert nicht!" nicht logisch widersprüchlich ist, dann ist der Satz "Ein + vollkommenes Wesen existiert!" nicht logisch notwendig. + +Die Kantsche Argumentation hatte weitreichende Folgen. So führte sie den [[Logik]]er [[Gottlob Frege]] dazu, +in der [[Formalisierung]] der Logik Existenz nicht als [[Prädikat (Logik)|Prädikat]], sondern durch einen Ope +rator, den so genannten [[Quantor|Existenzquantor]], auszudrücken. + +[[Alfred Jules Ayer]] hat darauf hingewiesen, dass man durchaus darauf beharren könne, dass zum Begriff " +;Gott" auch die Existenzbehauptung gehören möge. Aber aus der Annahme, dass das größte denkbare Wesen au +ch existieren müsse, folge noch nicht, dass auch ein Wesen tatsächlich vorhanden ist, das dem so bestimmten B +egriff entspricht. + +[[Bertrand Russell]] kritisierte am ontologischen Gottesbeweis, dass er nur dann wahr sein könne, wenn es ein +en direkten Weg aus der Phantasie in die Realität gebe. Ähnlich argumentiert auch [[Norbert Hoerster]]. Nach +ihm sagt es nichts über die Wahrheit einer [[Hypothese]] aus, wenn ihr Erfinder die Existenz mit in die Defin +ition aufnimmt. + +=== Der Kontingenzbeweis === +Der Gedankengang des Kontingenzbeweis ist folgender: Es gibt nichtnotwendiges Seiendes (das Zufällige, [[Kont +ingenz (Philosophie)|Kontingente]]). Dieses nichtnotwendige Seiende könnte genauso gut nicht sein. ''Dass'' e +s aber ist, ist nur damit erklärbar, dass es seine Existenz einem anderen Sein verdankt. Diese Abhängigkeitsk +ette lässt sich nur dann überhaupt stabil erklären, wenn es ein aus sich heraus Seiendes (''ens a se'') gibt, + von dem alles kontingent Seiende abhängig ist. Dieses absolut Seiende (Absolute) heißt Gott. (Vgl. auch die +Erklärung im Artikel ''[[Natürliche Theologie]]''). + +Argumentationen nach diesem Muster sehen sich verschiedenen Einwänden ausgesetzt: die Argumentation ist nur u +nter bestimmten Voraussetzungen schlüssig, die nicht von jeder Ontologie geteilt werden. Dazu zählen: die Prä +misse, dass es überhaupt eine objektive Unterscheidung von kontingent und notwendig in einem für solche Argum +ente relevanten Sinne gibt; dass Fragen nach dem Warum der Existenz eines Objekts stets die Erwähnung eines a +nderen Objekts in der Antwort verlangen; dass trotzdem der Ausnahmefall überhaupt sinnvoll ist, dass es auch +etwas ("erstes") gibt, wofür ebendies nicht gilt; dass dieses mit Gott (insb. dem Gott einer spezif +ischen Religion) identifiziert werden kann. + +=== Der teleologische Gottesbeweis === +;Beweisgang bei Thomas +Der Begriff [[Teleologie]] bezieht sich traditionell, etwa bei [[Thomas von Aquin]], auf eine planvolle Einri +chtung der Welt, durch welche die Dinge eine höhere Vollkommenheit erreichen.<ref>De ente et essentia 4 +: "Non autem potest esse quod ipsum esse sit causatum ab ipsa forma uel quiditate rei, dico sicut a caus +a efficiente, quia sic aliqua res esset sui ipsius causa et aliqua res se ipsam in esse produceret: quod est +impossibile."</ref><ref>I 3 4: "Si igitur esse rei sit aliud ab ejus essentia, necesse +est, quod esse illius rei vel sit causatum ab aliquo exteriori, vel a principiis essentialibus ejusdem rei. I +MPOSSIBILE est autem, quod esse sit causatum tantum ex principiis essentialibus rei, quia NULLA res sufficit, + quod sit sibi causa essendi, si habeat esse causatum. Oportet ergo, quod illud cujus esse est aliud ab essen +tia sua, habeat esse causatum ab ALIO."</ref><ref>ST I-II q 1 a 2 "Prima autem inter om +nes causas est causa finalis. Cujus ratio est, quia materia non consequitur formam, nisi secundum quod movetu +r ab agente: nihil enim reducit se de potentia ad actum."</ref>. Die Teleologie geht also über die + ursprüngliche Vollkommenheit der Dinge hinaus, bezieht sich auf eine offene Naturkausalität<ref>ST I 1 +03 a 1 resp "Ultima autem perfectio uniuscujusque est in consecutione finis. Unde ad divinam bonitatem p +ertinet, ut sicut produxit res in esse, ita etiam eas ad finem PERDUCAT; quod EST gubernare."</ref> +;<ref>ST I 103 a 1 resp "Cum enim optimi sit optima producere, non convenit summae Dei bonitati qu +od res productas ad perfectum non perducat."</ref> und bedarf einer äußeren Ursache. Diese ist auf +grund einer intentionalen Ordnung notwendigerweise intelligent<ref>ST I-II q 1 a 2 "Illa quae rati +onem habent, seipsa movent ad finem, quia habent dominium suum actuum per liberum arbitrium, quod est faculta +s voluntatis et rationis; illa vero quae ratione carent, tendunt in finem propter naturalem inclinationem, qu +asi ab alio mota, non autem a seipsis, cum non cognoscant rationem finis; et ideo nihil in finem ordinari pos +sunt, sed solum in finem ab alio ordinantur." Aristoteles Phys. lib. II, text. 49.</ref>. + +Der teleologische Gottesbeweis geht dabei traditionell von der Weltenlenkung aus (gubernatio rerum)<ref> +;ST q 2 a 3 resp</ref>. Es sei feststellbar, dass es in den Dingen dauerhafte oder angehäufte Verbesser +ungen gibt. Diese bedürften notwendigerweise einer Weltenlenkung<ref>Videmus enim in rebus naturalibus +provenire quod melius est, aut semper, aut in pluribus; quod NON CONTINGERET, nisi per aliquam providentiam r +es naturales dirigerentur ad finem boni, quod EST gubernare. ST I q 103 a 1 resp.</ref>. Unvernünftige +Dinge seien nicht in der Lage, ein Ziel zu verfolgen und bedürfen anderer Dinge, die sie zum Ziel bestimmen.& +lt;ref>ST I q 2 a 3 resp "Ea autem quae non habent cognitionem, non tendunt in finem, nisi directa ab + aliquo cognoscente et intelligente, sicut sagitta a sagittante."</ref> An oberster Stelle müsse e +in intelligentes Wesen stehen, das eben in der Lage ist, ein Ziel vorzugeben.<ref>ST I q 2 a 3 resp &qu +ot;Ergo est aliquid intelligens, a quo omnes res naturales ordinantur ad finem;"</ref> + +;Kritik +Ein früher Kritiker des teleologischen Gottesbeweises ist [[David Hume]] in seinen ''Dialogues Concerning Nat +ural Religion''. Immanuel Kant spricht dem Beweis, den er [[Physikotheologie|physiko-theologischen]] Beweis n +ennt, die Beweiskraft ab, weil er zwingend einen Schöpfer und damit einen schlüssigen kausalen Beweis vorauss +etzen muss. Der kausale Beweis wiederum setze wiederum zwingend einen schlüssigen ontologischen Beweis voraus +. + +Kritiken des teleologischen Beweises setzen meist an einer der beiden Fragen an: "Bestehen Ordnung, Schö +nheit und Zweckmäßigkeit wirklich?" und "Wenn Zweckmäßigkeit wirklich besteht, muss deswegen eine I +nstanz existieren, die diese geschaffen hat?" Die zweite Frage wird oft mit dem Hinweis verneint, dass Z +weckmäßigkeit auch anders erklärbar sei, etwa über Varianten der [[Evolutionstheorie]]. + +Nach einigen Verteidigern des teleologischen Gottesbeweises liegt in dieser Kritik ein Kategorienfehler vor. +Denn Begriffe wie Ordnung, Schönheit und Zweckmäßigkeit meinten hier keine naturwissenschaftlich zugängliche +Zweckmäßigkeit. Es gehe hier um den Sinn der Existenz, also die Frage nach dem "wozu?" und nicht na +ch dem "warum?". Diesen gewähre nur ein übernatürlicher (transzendenter) Zweck. + +Die theologisch umstrittene ''[[Intelligent Design|Intelligent-Design]]''-Theorie ist eine Variante des teleo +logischen Arguments für die Existenz eines Gottes. + +Eine spezielle Variante teleologischer Argumentation kann sich auf die Struktur religiöser Überlieferungen be +ziehen. So wird in islamischen Traditionen <ref>Vgl. Schimmel, Annemarie: ''Die Zeichen Gottes – Die re +ligiöse Welt des Islam'', München: C.H.Beck, S. 150 ff insbesondere S. 153: sog. i gaz al-qur'an – Unnachahml +ichkeit des heiligen Buches; ferner Aslan, Resa: ''Kein Gott außer Gott – Der Glaube der Muslime von Muhammad + bis zur Gegenwart'', München: C.H.Beck, S. 70 ff.</ref> eine Art "ästhetischer Gottesbeweis" + geführt: Da der Prophet Mohammed illiterat gewesen sei, könne er nicht den Koran als das unmittelbar von Got +t an ihn gerichtete Wort selbst ersonnen oder hervorgebracht haben. Die Schönheit des Textes lasse es daher a +ls unabdingbar erscheinen, dass Gott selbst dem Propheten den Text übermittelt habe und ihm aufgetragen habe, + diesen an die Umma zu tradieren. + +;Teleonome Beweise +{{Belege}} +Biologische Erklärungen beziehen sich oftmals auf scheinbare Zielgerichtetheit. Colin Pittendrigh hat versuch +t, solche Erklärungen auch begrifflich abzukoppeln von den Konnotationen des klassischen Begriffs der Teleolo +gie, mit welchem oft die Unterstellung einer wirklichen Planung einhergeht. Stattdessen hat er den Begriff &q +uot;[[Teleonomie]]" vorgeschlagen<ref>Behavior and Evolution, 1958</ref>, welche sich nur au +f Naturgesetze bezieht. + +<!-- Auch durch teleonome Beweisführung aber wurde und wird noch versucht, die Existenz eines [[Gott]]es z +u beweisen: Nach dem teleonomen ''Gottesbeweis'' ist alles in der Welt zielgerichtet und auf Ordnung, Schönhe +it und Zweckmäßigkeit hin ausgelegt. Dies lässt, so die Argumentation, nur den Schluss zu, dass ein [[Schöpfu +ng|Schöpfergott]] existiert, der die Welt so eingerichtet hat. Der teleonome "Gottesbeweis" hat als +o als Hintergrund eine geschlossene Naturkausalität. Selbst Evolutionisten wie [[Richard Dawkins]] oder [[Mar +tin Rhonheimer]] vertreten Teleonomie. Allerdings sieht nur Rhonheimer darin einen Gottesbeweis. Auch die Int +erpretation des teleologischen Gottesbeweises durch [[Robert Spaemann]] und [[Reinhard Löw]] geht nicht über +Teleonomie hinaus, obwohl beide Erklärungsdefizite in der Teleonomie aufgezeigt haben. BELEGE FEHLEN. in welc +her reputablen quelle steht, dass spaemann nicht über teleonomie hinausgeht? --> + +=== Der kosmologische Gottesbeweis === +Die antiken und mittelalterlichen Varianten des kosmologischen Beweises gehen in irgendeiner Form davon aus, +dass das Universum eine Ursache außerhalb seiner selbst haben müsse. + +==== Klassische Formulierung ==== +Die klassische Formulierung des kosmologischen Gottesbeweises findet sich bei [[Thomas von Aquin]] in der [[S +umma theologica]]<ref>[http://www.aristoteles-heute.de/sein_a/sein_A/unbewegt/Theologie/summa/ftp/dtTho +mas.qq/11002.html#3 I, q. 2, a. 3]</ref>, der dabei seinerseits auf Gedankengänge von [[Platon]]<ref +>vgl. Platon, Phaidros 245 c ff., Nomoi 891 b ff.</ref> und [[Aristoteles]]<ref>vgl. Aristotel +es, Physik VII-VIII; Metaphysik XII.</ref> zurückgriff: Der erste der „fünf Wege“ (quinque viae), die e +s gebe, „das Dasein Gottes zu beweisen“, geht aus von der empirisch feststellbaren Tatsache der [[Bewegung]] +in der Welt (deshalb auch „kinesiologischer“ Gottesbeweis genannt). +„Bewegung“ versteht Thomas dabei nicht nur physikalisch als Ortsveränderung, sondern im weiteren (philosophi +sch-aristotelischen) Sinn als [[Physik (Aristoteles)#Bewegung|„Übergang von der Möglichkeit in die Wirklichke +it“]] (also auch in der Bedeutung von „Werden“, „Veränderung“, „Entwicklung“). +Von der Möglichkeit in die Wirklichkeit übergeführt werden kann etwas – nach dem [[Kausalitätsprinzip]] bzw. +dem [[Satz vom zureichenden Grund]] – aber nur durch etwas, das selbst in Wirklichkeit ist. +Alles, was in Bewegung ist, muss also durch etwas anderes – eine wirkende Ursache – bewegt worden sein. +Dass sich etwas „von selbst“ bewegen kann, schließt Thomas durch den [[Satz vom ausgeschlossenen Widerspruch| +„Satz vom Widerspruch“]] aus, nach dem es unmöglich ist, dass etwas zugleich und in derselben Hinsicht in Mög +lichkeit und in Wirklichkeit existiert. Es ist deshalb auch unmöglich, dass etwas zugleich und in derselben H +insicht bewegend und bewegt, also Ursache und Wirkung in einem, ist. +Jede Bewegung (Wirkung) ist also selbst wieder durch etwas anderes bewegt (bewirkt bzw. verursacht), diese wi +ederum durch eine andere und so weiter. +In dieser Weise lässt sich jedoch nicht [[Infiniter Regress|bis ins Unendliche zurückgehen]], da sonst die ge +samte Kette von Bewegendem (Ursachen) und Bewegtem (Wirkungen) – und damit auch die von uns zweifellos festst +ellbare Bewegung in der Welt – gar nicht in Gang gekommen wäre. +Also muss – nach Thomas von Aquin – notwendigerweise ein „[[Erste Ursache|erstes unbewegtes Bewegendes]]“ („p +rimum movens immobile“) vorausgesetzt werden, das die Kausalkette des Werdens in Gang gesetzt hat, ohne selbs +t Teil dieser Kausalkette zu sein. +„Und dieses“, behauptet Thomas von Aquin, „erkennen alle als Gott“. + +==== Varianten ==== +Eine Variante dazu stammt von [[Gottfried Wilhelm Leibniz|Leibniz]], der annahm, es müsse einen letzten Grund + der Dinge geben, der außerhalb der Welt und damit bei Gott liegt. Gott sei der zureichende Grund der Welt. + +Moderne Varianten des [[Kosmologie|kosmologischen]] Gottesbeweises argumentieren wie folgt: Die [[Physikalisc +he Konstante|physikalischen Naturkonstanten]] seien so aufeinander abgestimmt, dass Leben, wie wir es kennen, + möglich ist – was sich bei Abweichung um wenige Promille ändern würde. Diese Abstimmung sei nur erklärbar al +s planvolle Wahl – durch einen Schöpfergott. (''Näheres dazu im Artikel [[Feinabstimmung der Naturkonstanten] +].'') + +Dieser Argumentation steht das so genannte [[Anthropisches Prinzip|anthropische Prinzip]] gegenüber: ''" +Weil es Beobachter des Universums gibt, muss es Eigenschaften besitzen, die die Existenz von Beobachtern zula +ssen"''. Wenn dieses Prinzip bereits teleologisch verstanden wird (das Universum besitzt Eigenschaften ' +'zweckhafter'' Art), wird die Argumentation Kritikern zufolge zirkulär. Wird umgekehrt das anthropische Prinz +ip nicht-teleologisch verstanden, also die scheinbare Zweckhaftigkeit naturwissenschaftlich erklärt, wird die + Argumentation des "kosmologischen Gottesbeweises" Kritikern zufolge unschlüssig. + +== Einzelnachweise == +<references/> + +== Literatur == +{{Philosophiebibliographie1|Gottesbeweis}} +;Allgemeines +* [[William Lane Craig]]: ''Die Existenz Gottes und der Ursprung des Universums.'' Brockhaus, Wuppertal und Z +ürich 1989, ISBN 3-417-20443-7 +* [[Dieter Henrich (Philosoph)|Dieter Henrich]]: ''Der Ontologische Gottesbeweis: sein Problem und seine Gesc +hichte in der Neuzeit.'' Tübingen 1967 +* John Leslie Mackie: ''Das Wunder des Theismus. Argumente für und gegen die Existenz Gottes.'' Reclam, Stutt +gart 2002, ISBN 3-15-008075-4 (RUB 8075, Nachdruck) +* Graham Oppy: ''Ontological Arguments and Belief in God.'' Cambridge University Press, Cambridge 1995, ISBN +0-521-48120-1 +* [[Friedo Ricken]] (Hrsg.): ''Klassische Gottesbeweise in der Sicht der gegenwärtigen Logik und Wissenschaft +stheorie.'' 2. Aufl. Kohlhammer, Stuttgart 1998, ISBN 3-17-014416-2 (Münchener philosophische Studien NF Bd. +4) +* Josef Schmidt: ''Philosophische Theologie.'' Kohlhammer, Stuttgart 2003, ISBN 3-17-017958-6 (Grundkurs Phil +osophie 5) +* [[Hansjürgen Verweyen]]: ''Nach Gott fragen''. Anselms Gottesbegriff als Anleitung. Essen: Ludgerus 1978. ( +Christliche Strukturen in der modernen Welt. Hg. v. Wilhelm Plöger; 23)<ref>[http://www.ub.uni-freiburg +.de/referate/04/verweyen/anselm0.htm Online-Ausgabe]</ref> + +;Populäre Literatur +<!-- +* [[Hans Küng]]: ''Der Anfang aller Dinge, Naturwissenschaft und Religion.'' 2. Auflage. Piper, München und Z +ürich 2005, ISBN 978-3-492-04787-6 --> +* Hans-Dietrich Matschke: ''Gottesbeweise und ihre Kritik.'' 6. Aufl. Vandenhoeck und Ruprecht, Göttingen 197 +9, ISBN 3-525-77410-9 (Göttinger Quellenhefte für Unterricht und Arbeitsgemeinschaft Bd. 1) + +== Siehe auch == +* [[Gottesbild]] +* [[Gottesbeweis von Descartes]] + +== Weblinks == +{{wiktionary|Gottesbeweis}} +;Bibliographien +* [http://www.ucl.ac.uk/philosophy/LPSG/Ch09.pdf Bibliographie] des London Philosophy Study Guide (Englisch) +* R. Corazzon: [http://www.formalontology.it/ontological_proof.htm History of the ontological argument] Bibli +ographie zur Geschichte des ontologischen Gottesbeweises (Englisch) +* [http://www.infidels.org/library/modern/graham_oppy/ Graham Oppy] - Website mit Aufsätzen zum Thema Gottesb +eweise (Englisch) +;Überblicksdarstellungen +* [http://www.hwph.ch/inhalt/artikelbeispiel_3.html G. Gabriel: ''Gottesbeweis, ontologischer''], in: [[Histo +risches Wörterbuch der Philosophie]] +* Verschiedene Einträge in der [[Stanford Encyclopedia of Philosophy]]: [http://plato.stanford.edu/entries/go +d-necessary-being/ ''God and Other Necessary Beings.''], [http://plato.stanford.edu/entries/moral-arguments-g +od/ ''Moral Arguments for the Existence of God.''], [http://plato.stanford.edu/entries/ontological-arguments/ + ''Ontological Arguments''], [http://plato.stanford.edu/entries/pragmatic-belief-god/ ''Pragmatic Arguments'' +], [http://plato.stanford.edu/entries/teleological-arguments/ ''Teleological Arguments''] (Englisch) +;Essays +* [[Robert Spaemann]]: [http://www.welt.de/print-welt/article560135/Der_Gottesbeweis.html?print=yes ''Warum w +ir, wenn es Gott nicht gibt, überhaupt nichts denken können.''] + +{{Lesenswert}} + +[[Kategorie:Theologie]] +[[Kategorie:Natürliche Theologie]] + +[[ar:وجود الله]] +[[en:Existence of God]] +[[es:Existencia de Dios]] +[[et:Jumalatõestus]] +[[fi:Jumalan olemassaolo]] +[[fr:Arguments sur l'existence de Dieu]] +[[he:אלוהים#טיעונים לקיום אלוהים]] +[[hi:प्रूफ़ फॉर थे एक्सिस्तेंस ऑफ़ गोद]] +[[hu:Istenérv]] +[[it:Esistenza di Dio]] +[[ja:神の存在証明]] +[[lv:Dieva eksistence]] +[[nl:Godsbewijs]] +[[no:Gudsbevis]] +[[pl:Dowodzenie istnienia Boga]] +[[pt:Existência de Deus]] +[[sk:Dôkaz existencie boha]] +[[sr:Постојање Бога]] +[[sv:Gudsbevis]] +[[tr:Tanrı'nın varlığı]] +[[uz:Xudoning mavjudligi]] + + + + Metzger + 35102 + + 51270539 + 2008-09-29T07:36:54Z + + RedBot + 59105 + + + Bot-unterstützte Begriffsklärung: Helmut Metzger - Link(s) ersetzt durch [[Helmut Metzger (Reg +isseur)]]; kosmetische Änderungen + '''Metzger''' steht für: +* den Beruf des Metzgers, siehe [[Fleischer]] +* [[Metzger (Kartenspiel)]] + + +'''Metzger''' ist der Familienname folgender Personen: +*[[Albrecht Metzger]] (* 1945), deutscher Moderator, Journalist und Kabarettist +*[[Alexander Metzger (Bobfahrer)]] (* 1973), deutscher Bobfahrer +*[[Alexander Metzger (Musiker)]] (* 1969), deutscher Musikproduzent +*[[Ambrosius Metzger]] (1573–1632), deutscher [[Meistersinger]] +*[[Andre Metzger]] (* 1960), US-amerikanischer Ringer +*[[Axel Metzger]] (* 1971), deutscher Rechtswissenschaftler +*[[Balthasar Metzger]] (1623–1687), deutscher Arzt +*[[Bruce Metzger]] (1914–2007), US-amerikanischer evangelischer Theologe (Neutestamentler, Textkritiker) +*[[Dagmar Metzger]] (* 1958), hessische Politikerin (SPD) und Abgeordnete des Hessischen Landtags +*[[Erika Metzger]], deutsche Tischtennisspielerin +*[[Fritz Metzger]] (1898-1973), Schweizer Kirchenarchitekt +*[[Gabriele Metzger]] (* 1961), deutsche Schauspielerin +*[[Giovanni Metzger]] (1772–1844), deutsch-italienischer Kupferstecher und Kunsthändler +*[[Günther Metzger]] (* 1933), deutscher Jurist und Politiker (SPD) +*[[Gustav Metzger]] (* 1926), Künstler +*[[Heinz-Klaus Metzger]] (* 1932), deutscher Musikwissenschaftlicher +*[[Helmut Metzger (Regisseur)|Helmut Metzger]] (* 1959), deutscher Fernseh- und Spielfilmregisseur +*[[Helmut Metzger (Autor)]] (1917–1995), Pfälzer Mundartdichter +*[[Heribert Metzger]] (* 1950), österreichischer Organist +*[[Johann Baptist Metzger]] (1771-1844), deutscher Kupferstecher und Kunsthändler +*[[Johann Christian Metzger]] (1789–1852), deutscher Landschaftsarchitekt und Gartendirektor +*[[Johann Peter Metzger]] (Johann (Nepomuk) Peter Metzger von Alcantara; 1723–1795), Bürgermeister der Stadt +Salzburg +*[[Ludwig Metzger]] (1902–1993), deutscher Jurist und Politiker (SPD) +*[[Max Josef Metzger]] (1887–1944), deutscher katholischer Priester, Opfer der NS-Justiz +*[[Martin Metzger]] (* 1928), deutscher Theologieprofessor (Baptist) für Altes Testament und Biblische Archäo +logie (Uni Kiel) +*[[Oswald Metzger]] (* 1954), deutscher Politiker (CDU) +*[[Ottilie Metzger-Lattermann]] (1878-1943), deutsche Sängerin +*[[Radley Metzger]] (* 1929), US-amerikanischer Regisseur, Filmproduzent, Autor und Filmverleiher +*[[Stein Metzger]] (* 1972), US-amerikanischer Beachvolleyballspieler +*[[Wilhelm Metzger]] (1848-1914), deutscher Politiker (SPD), Mitglied des Reichstages +*[[Wolfgang Metzger]] (1899–1979), deutscher Psychologe +*[[Yona Metzger]] (* 1953), israelischer Großrabbiner + +''siehe auch:'' +* [[Mezger]] +* [[Kunstwerkstätte E. & V. Mezger]] in Karlsruhe + +'''Siehe auch:''' +{{Wiktionary|Metzger}} +{{Begriffsklärung}} + +[[en:Metzger]] +[[pt:Metzger]] +[[ru:Мецгер]] + + + + Fleischer + 35104 + + + diff --git a/testwiki.xml.idx.xml b/testwiki.xml.idx.xml new file mode 100644 index 000000000..95a63638f --- /dev/null +++ b/testwiki.xml.idx.xml @@ -0,0 +1,11 @@ + + + Gottesbeweis + + + Metzger + + + Fleischer + +