Shake your Style.

06.10.2007

Das magische Quadrat von Subirachs



Auf diesem Bild sehen wir einen kleinen Ausschnitt der Passionsfassade der Sagrada Família in Barcelona. Diese wurde von Antonio Gaudís Nachfolger Josep Maria Subirachs geschaffen, einem berühmten Bildhauer, der ein starkes Interesse in die Verbindungen von Mathematik und Kunst hatte. Wir sehen neben dem Kuss des Judas das magische Quadrat von Subirachs. Es gibt 310 Möglichkeiten, aus den Zahlen durch Summation 33 zu erhalten, das Alter in dem Jesus Christus gekreuzigt wurde.



Um diese Tatsache zu überprüfen, habe ich ein kleines Programm in Python geschrieben

from pylab import *
from numpy import *

def count33(s):
    global z
    z=0
    loop(16,[],len(s),1)

def isorder(arr):
    if arr==[]:
        return True
    for i in arange(len(arr)-1):
        if arr[i] >= arr[i+1]:
            return False
            break
    return True

def loop(depth,fixindizes,maxindex,loopnum):
    global s,z
    if isorder(fixindizes)==True:
        if fixindizes!=[]:
            if sum(s[[fixindizes]])==33:
                z=z+1
                print z,'.) ',list(s[fixindizes])
        if depth > loopnum:
            for i in arange(maxindex):
                loop(depth,fixindizes+[i],maxindex,loopnum+1)

s=array([1,14,14,4,11,7,6,9,8,10,10,5,13,2,3,15])
count33(s)


welches exakt 310 Möglichkeiten ausgibt:

1.) 1 + 14 + 14 + 4
2.) 1 + 14 + 4 + 11 + 3
3.) 1 + 14 + 4 + 7 + 5 + 2
4.) 1 + 14 + 4 + 6 + 8
5.) 1 + 14 + 4 + 6 + 5 + 3
6.) 1 + 14 + 4 + 9 + 5
7.) 1 + 14 + 4 + 9 + 2 + 3
8.) 1 + 14 + 11 + 7
9.) 1 + 14 + 11 + 5 + 2
10.) 1 + 14 + 7 + 6 + 5
11.) 1 + 14 + 7 + 6 + 2 + 3
12.) 1 + 14 + 7 + 9 + 2
13.) 1 + 14 + 7 + 8 + 3
14.) 1 + 14 + 6 + 9 + 3
15.) 1 + 14 + 6 + 10 + 2
16.) 1 + 14 + 6 + 10 + 2
17.) 1 + 14 + 8 + 10
18.) 1 + 14 + 8 + 10
19.) 1 + 14 + 8 + 5 + 2 + 3
20.) 1 + 14 + 10 + 5 + 3
21.) 1 + 14 + 10 + 5 + 3
22.) 1 + 14 + 5 + 13
23.) 1 + 14 + 13 + 2 + 3
24.) 1 + 14 + 3 + 15
25.) 1 + 14 + 4 + 11 + 3
26.) 1 + 14 + 4 + 7 + 5 + 2
27.) 1 + 14 + 4 + 6 + 8
28.) 1 + 14 + 4 + 6 + 5 + 3
29.) 1 + 14 + 4 + 9 + 5
30.) 1 + 14 + 4 + 9 + 2 + 3
31.) 1 + 14 + 11 + 7
32.) 1 + 14 + 11 + 5 + 2
33.) 1 + 14 + 7 + 6 + 5
34.) 1 + 14 + 7 + 6 + 2 + 3
35.) 1 + 14 + 7 + 9 + 2
36.) 1 + 14 + 7 + 8 + 3
37.) 1 + 14 + 6 + 9 + 3
38.) 1 + 14 + 6 + 10 + 2
39.) 1 + 14 + 6 + 10 + 2
40.) 1 + 14 + 8 + 10
41.) 1 + 14 + 8 + 10
42.) 1 + 14 + 8 + 5 + 2 + 3
43.) 1 + 14 + 10 + 5 + 3
44.) 1 + 14 + 10 + 5 + 3
45.) 1 + 14 + 5 + 13
46.) 1 + 14 + 13 + 2 + 3
47.) 1 + 14 + 3 + 15
48.) 1 + 4 + 11 + 7 + 8 + 2
49.) 1 + 4 + 11 + 7 + 10
50.) 1 + 4 + 11 + 7 + 10
51.) 1 + 4 + 11 + 7 + 5 + 2 + 3
52.) 1 + 4 + 11 + 6 + 9 + 2
53.) 1 + 4 + 11 + 6 + 8 + 3
54.) 1 + 4 + 11 + 9 + 8
55.) 1 + 4 + 11 + 9 + 5 + 3
56.) 1 + 4 + 11 + 10 + 5 + 2
57.) 1 + 4 + 11 + 10 + 5 + 2
58.) 1 + 4 + 11 + 2 + 15
59.) 1 + 4 + 7 + 6 + 8 + 5 + 2
60.) 1 + 4 + 7 + 6 + 10 + 5
61.) 1 + 4 + 7 + 6 + 10 + 2 + 3
62.) 1 + 4 + 7 + 6 + 10 + 5
63.) 1 + 4 + 7 + 6 + 10 + 2 + 3
64.) 1 + 4 + 7 + 6 + 13 + 2
65.) 1 + 4 + 7 + 6 + 15
66.) 1 + 4 + 7 + 9 + 10 + 2
67.) 1 + 4 + 7 + 9 + 10 + 2
68.) 1 + 4 + 7 + 8 + 10 + 3
69.) 1 + 4 + 7 + 8 + 10 + 3
70.) 1 + 4 + 7 + 8 + 13
71.) 1 + 4 + 7 + 5 + 13 + 3
72.) 1 + 4 + 6 + 9 + 8 + 5
73.) 1 + 4 + 6 + 9 + 8 + 2 + 3
74.) 1 + 4 + 6 + 9 + 10 + 3
75.) 1 + 4 + 6 + 9 + 10 + 3
76.) 1 + 4 + 6 + 9 + 13
77.) 1 + 4 + 6 + 10 + 10 + 2
78.) 1 + 4 + 6 + 5 + 2 + 15
79.) 1 + 4 + 8 + 10 + 10
80.) 1 + 4 + 8 + 10 + 5 + 2 + 3
81.) 1 + 4 + 8 + 10 + 5 + 2 + 3
82.) 1 + 4 + 8 + 5 + 13 + 2
83.) 1 + 4 + 8 + 5 + 15
84.) 1 + 4 + 8 + 2 + 3 + 15
85.) 1 + 4 + 10 + 10 + 5 + 3
86.) 1 + 4 + 10 + 5 + 13
87.) 1 + 4 + 10 + 13 + 2 + 3
88.) 1 + 4 + 10 + 3 + 15
89.) 1 + 4 + 10 + 5 + 13
90.) 1 + 4 + 10 + 13 + 2 + 3
91.) 1 + 4 + 10 + 3 + 15
92.) 1 + 4 + 13 + 15
93.) 1 + 11 + 7 + 6 + 8
94.) 1 + 11 + 7 + 6 + 5 + 3
95.) 1 + 11 + 7 + 9 + 5
96.) 1 + 11 + 7 + 9 + 2 + 3
97.) 1 + 11 + 6 + 8 + 5 + 2
98.) 1 + 11 + 6 + 10 + 5
99.) 1 + 11 + 6 + 10 + 2 + 3
100.) 1 + 11 + 6 + 10 + 5
101.) 1 + 11 + 6 + 10 + 2 + 3
102.) 1 + 11 + 6 + 13 + 2
103.) 1 + 11 + 6 + 15
104.) 1 + 11 + 9 + 10 + 2
105.) 1 + 11 + 9 + 10 + 2
106.) 1 + 11 + 8 + 10 + 3
107.) 1 + 11 + 8 + 10 + 3
108.) 1 + 11 + 8 + 13
109.) 1 + 11 + 5 + 13 + 3
110.) 1 + 7 + 6 + 9 + 8 + 2
111.) 1 + 7 + 6 + 9 + 10
112.) 1 + 7 + 6 + 9 + 10
113.) 1 + 7 + 6 + 9 + 5 + 2 + 3
114.) 1 + 7 + 9 + 8 + 5 + 3
115.) 1 + 7 + 9 + 13 + 3
116.) 1 + 7 + 8 + 10 + 5 + 2
117.) 1 + 7 + 8 + 10 + 5 + 2
118.) 1 + 7 + 8 + 2 + 15
119.) 1 + 7 + 10 + 10 + 5
120.) 1 + 7 + 10 + 10 + 2 + 3
121.) 1 + 7 + 10 + 13 + 2
122.) 1 + 7 + 10 + 15
123.) 1 + 7 + 10 + 13 + 2
124.) 1 + 7 + 10 + 15
125.) 1 + 7 + 5 + 2 + 3 + 15
126.) 1 + 6 + 9 + 10 + 5 + 2
127.) 1 + 6 + 9 + 10 + 5 + 2
128.) 1 + 6 + 9 + 2 + 15
129.) 1 + 6 + 8 + 10 + 5 + 3
130.) 1 + 6 + 8 + 10 + 5 + 3
131.) 1 + 6 + 8 + 5 + 13
132.) 1 + 6 + 8 + 13 + 2 + 3
133.) 1 + 6 + 8 + 3 + 15
134.) 1 + 6 + 10 + 13 + 3
135.) 1 + 6 + 10 + 13 + 3
136.) 1 + 9 + 8 + 10 + 5
137.) 1 + 9 + 8 + 10 + 2 + 3
138.) 1 + 9 + 8 + 10 + 5
139.) 1 + 9 + 8 + 10 + 2 + 3
140.) 1 + 9 + 8 + 13 + 2
141.) 1 + 9 + 8 + 15
142.) 1 + 9 + 10 + 10 + 3
143.) 1 + 9 + 10 + 13
144.) 1 + 9 + 10 + 13
145.) 1 + 9 + 5 + 13 + 2 + 3
146.) 1 + 9 + 5 + 3 + 15
147.) 1 + 10 + 5 + 2 + 15
148.) 1 + 10 + 5 + 2 + 15
149.) 14 + 14 + 5
150.) 14 + 14 + 2 + 3
151.) 14 + 4 + 7 + 6 + 2
152.) 14 + 4 + 7 + 8
153.) 14 + 4 + 7 + 5 + 3
154.) 14 + 4 + 6 + 9
155.) 14 + 4 + 8 + 5 + 2
156.) 14 + 4 + 10 + 5
157.) 14 + 4 + 10 + 2 + 3
158.) 14 + 4 + 10 + 5
159.) 14 + 4 + 10 + 2 + 3
160.) 14 + 4 + 13 + 2
161.) 14 + 4 + 15
162.) 14 + 11 + 6 + 2
163.) 14 + 11 + 8
164.) 14 + 11 + 5 + 3
165.) 14 + 7 + 9 + 3
166.) 14 + 7 + 10 + 2
167.) 14 + 7 + 10 + 2
168.) 14 + 6 + 8 + 5
169.) 14 + 6 + 8 + 2 + 3
170.) 14 + 6 + 10 + 3
171.) 14 + 6 + 10 + 3
172.) 14 + 6 + 13
173.) 14 + 9 + 8 + 2
174.) 14 + 9 + 10
175.) 14 + 9 + 10
176.) 14 + 9 + 5 + 2 + 3
177.) 14 + 4 + 7 + 6 + 2
178.) 14 + 4 + 7 + 8
179.) 14 + 4 + 7 + 5 + 3
180.) 14 + 4 + 6 + 9
181.) 14 + 4 + 8 + 5 + 2
182.) 14 + 4 + 10 + 5
183.) 14 + 4 + 10 + 2 + 3
184.) 14 + 4 + 10 + 5
185.) 14 + 4 + 10 + 2 + 3
186.) 14 + 4 + 13 + 2
187.) 14 + 4 + 15
188.) 14 + 11 + 6 + 2
189.) 14 + 11 + 8
190.) 14 + 11 + 5 + 3
191.) 14 + 7 + 9 + 3
192.) 14 + 7 + 10 + 2
193.) 14 + 7 + 10 + 2
194.) 14 + 6 + 8 + 5
195.) 14 + 6 + 8 + 2 + 3
196.) 14 + 6 + 10 + 3
197.) 14 + 6 + 10 + 3
198.) 14 + 6 + 13
199.) 14 + 9 + 8 + 2
200.) 14 + 9 + 10
201.) 14 + 9 + 10
202.) 14 + 9 + 5 + 2 + 3
203.) 4 + 11 + 7 + 6 + 5
204.) 4 + 11 + 7 + 6 + 2 + 3
205.) 4 + 11 + 7 + 9 + 2
206.) 4 + 11 + 7 + 8 + 3
207.) 4 + 11 + 6 + 9 + 3
208.) 4 + 11 + 6 + 10 + 2
209.) 4 + 11 + 6 + 10 + 2
210.) 4 + 11 + 8 + 10
211.) 4 + 11 + 8 + 10
212.) 4 + 11 + 8 + 5 + 2 + 3
213.) 4 + 11 + 10 + 5 + 3
214.) 4 + 11 + 10 + 5 + 3
215.) 4 + 11 + 5 + 13
216.) 4 + 11 + 13 + 2 + 3
217.) 4 + 11 + 3 + 15
218.) 4 + 7 + 6 + 9 + 5 + 2
219.) 4 + 7 + 6 + 8 + 5 + 3
220.) 4 + 7 + 6 + 13 + 3
221.) 4 + 7 + 9 + 8 + 5
222.) 4 + 7 + 9 + 8 + 2 + 3
223.) 4 + 7 + 9 + 10 + 3
224.) 4 + 7 + 9 + 10 + 3
225.) 4 + 7 + 9 + 13
226.) 4 + 7 + 10 + 10 + 2
227.) 4 + 7 + 5 + 2 + 15
228.) 4 + 6 + 8 + 10 + 5
229.) 4 + 6 + 8 + 10 + 2 + 3
230.) 4 + 6 + 8 + 10 + 5
231.) 4 + 6 + 8 + 10 + 2 + 3
232.) 4 + 6 + 8 + 13 + 2
233.) 4 + 6 + 8 + 15
234.) 4 + 6 + 10 + 10 + 3
235.) 4 + 6 + 10 + 13
236.) 4 + 6 + 10 + 13
237.) 4 + 6 + 5 + 13 + 2 + 3
238.) 4 + 6 + 5 + 3 + 15
239.) 4 + 9 + 8 + 10 + 2
240.) 4 + 9 + 8 + 10 + 2
241.) 4 + 9 + 10 + 10
242.) 4 + 9 + 10 + 5 + 2 + 3
243.) 4 + 9 + 10 + 5 + 2 + 3
244.) 4 + 9 + 5 + 13 + 2
245.) 4 + 9 + 5 + 15
246.) 4 + 9 + 2 + 3 + 15
247.) 4 + 8 + 5 + 13 + 3
248.) 11 + 7 + 6 + 9
249.) 11 + 7 + 8 + 5 + 2
250.) 11 + 7 + 10 + 5
251.) 11 + 7 + 10 + 2 + 3
252.) 11 + 7 + 10 + 5
253.) 11 + 7 + 10 + 2 + 3
254.) 11 + 7 + 13 + 2
255.) 11 + 7 + 15
256.) 11 + 6 + 9 + 5 + 2
257.) 11 + 6 + 8 + 5 + 3
258.) 11 + 6 + 13 + 3
259.) 11 + 9 + 8 + 5
260.) 11 + 9 + 8 + 2 + 3
261.) 11 + 9 + 10 + 3
262.) 11 + 9 + 10 + 3
263.) 11 + 9 + 13
264.) 11 + 10 + 10 + 2
265.) 11 + 5 + 2 + 15
266.) 7 + 6 + 9 + 8 + 3
267.) 7 + 6 + 8 + 10 + 2
268.) 7 + 6 + 8 + 10 + 2
269.) 7 + 6 + 10 + 10
270.) 7 + 6 + 10 + 5 + 2 + 3
271.) 7 + 6 + 10 + 5 + 2 + 3
272.) 7 + 6 + 5 + 13 + 2
273.) 7 + 6 + 5 + 15
274.) 7 + 6 + 2 + 3 + 15
275.) 7 + 9 + 10 + 5 + 2
276.) 7 + 9 + 10 + 5 + 2
277.) 7 + 9 + 2 + 15
278.) 7 + 8 + 10 + 5 + 3
279.) 7 + 8 + 10 + 5 + 3
280.) 7 + 8 + 5 + 13
281.) 7 + 8 + 13 + 2 + 3
282.) 7 + 8 + 3 + 15
283.) 7 + 10 + 13 + 3
284.) 7 + 10 + 13 + 3
285.) 6 + 9 + 8 + 10
286.) 6 + 9 + 8 + 10
287.) 6 + 9 + 8 + 5 + 2 + 3
288.) 6 + 9 + 10 + 5 + 3
289.) 6 + 9 + 10 + 5 + 3
290.) 6 + 9 + 5 + 13
291.) 6 + 9 + 13 + 2 + 3
292.) 6 + 9 + 3 + 15
293.) 6 + 10 + 10 + 5 + 2
294.) 6 + 10 + 2 + 15
295.) 6 + 10 + 2 + 15
296.) 9 + 8 + 13 + 3
297.) 8 + 10 + 10 + 5
298.) 8 + 10 + 10 + 2 + 3
299.) 8 + 10 + 13 + 2
300.) 8 + 10 + 15
301.) 8 + 10 + 13 + 2
302.) 8 + 10 + 15
303.) 8 + 5 + 2 + 3 + 15
304.) 10 + 10 + 13
305.) 10 + 5 + 13 + 2 + 3
306.) 10 + 5 + 3 + 15
307.) 10 + 5 + 13 + 2 + 3
308.) 10 + 5 + 3 + 15
309.) 5 + 13 + 15
310.) 13 + 2 + 3 + 15


In der Tat ist Subirachs magisches Quadrat "nur" eine Abänderung von Dürers magischem Quadrat mit der "magischen Zahl" 34. Es entsteht aus einer Drehung um 180° und der systematischen Verringerung einiger Zahlen um 1.



Dass Subirchas den Einfluss seiner Abänderung auf die Anzahl der Möglichkeiten und die Reduktion zur 33 abschätzen konnte ist allein schon Ausdruck wahrer Leidenschaft. Außerdem sind die durch die Abänderung entstandenen doppelten Zahlen in ihrer Summe gleich der Summe der alphabetischen Positionen der Buchstaben INRI.

10 + 10 + 14 + 14 = 48 = 9 + 13 + 17 + 9


Subirachs sagte, er wollte damit die unüblicherweise fehlende Kreuzinschrift auf seine Weise darstellen. Unabhängig davon, ob dies Absicht oder glücklicher Zufall war, zeigt sich auch in dieser Rechtfertigung ein Symmetriestreben, bzw. die Notwendigkeit eine Asymmetrie durch eine höhere Symmetrie zu beseitigen.

Ich konnte noch nicht herausfinden, ob es tatsächlich das magische Quadrat mit den meisten Möglichkeiten ist. Dies währe eine Aufgabe für eine schnelle Rechensprache wie Fortran, da mein Python in Schleifen sehr langsam wird. Es benötigt schon 20 Sekunden, um die Möglichkeiten eines Quadrats zu ermitteln. Daher sei diese Aufgabe hiermit André übertragen. Abgabe bis spätestens 20.10.2007.

Quellen:
Artikel von George Zimmermann
Englischer Wikipedia-Artikel über magische Quadrate
How to think like a computer scientist - learning with python

Wenn Antje wieder in Dresden ist und wir Zeit finden, gibt es selbstverständlich auch einen allgemeinen Bericht über unseren Aufenthalt in der Katalanenmentropole.

5 Kommentare:

Ändy hat gesagt…

So'n mist. Ich schaff's bis zum 20. nicht.

Programm ist fast fertig, aber nur fast. Nur noch ein Logikfehler, für dessen Auffindung meine Konzentration grad nicht reich. Außerdem ruft das Bettchen verlockend nach mir, und der PC bietet mir noch Star Wars - Clone Wars an.
Drum lass ich's einfach mal für heut sein.

Bin übers Wochenende auch noch weg, so dass ich um Aufschub bitten muss.
Also "Gnadeeeee."

Ändy hat gesagt…

Ich hab's!!!

Zwar längst überfällig, aber es ist mir gelungen das Quadrat mit den meisten Möglichkeiten für die 33 zu finden.

"Quadrat mit meisten M"oglichkeiten die 33 zu bilden setzt sich aus folgenden Zahlen zusammen:

6 6 6 6
6 3 3 3
3 3 3 3
3 3 3 3

M"oglichkeiten: 9032
Datum(YYYYMMDD): 20071109 Zeit(HHMMSS.SSS): 140022.564
Cpu Zeit(Std): 18.554"

Allerhand.

Programm findet sich hier.
(Verzeiht mir bitte die Schlächte!)

Im ersten Teil befindet sich die Vorschrift, welche alle möglichen Zahlenkombinationen bildet, in der Subroutine der Algorythmus zur Ermittlung der Additionsmöglichkeiten.

Nun zur Dramaturgie:

Wie ihr seht hab ich mit der 3 und 15x2 begonnen, da dies das Quadrat mit den kleinsten Zahlen zur Bildung von 33 ist. Anschließend wir immer eine 1 zu einem Element hinzu addiert und der dahinterstehende Rest auf 1 gesetzt, so dass am Ende auch jede Kombination durchlaufen wird. Die Abbruchsmatrix stellt die mit 16x17 dar, obwohl eigentlich alle zahlen von 1 bis 33 durchprobiert werden sollten. Dies hab ich zunächst auch gemacht, wobei ich dann nach zwei Wochen gespannten Wartens immer noch kein Ergebniss hatte. (Hab es übrigends im PC-Cluster der Chemie an der Uni laufen lassen, so dass mich nicht gestört hat.) Das Programm war also noch am Laufen. Hab dann mal die Kombinatorik bemüht und als Zahl an Möglichkeiten so etwa 2 Billionen ermittelt. Mit Zahlen von 1 bis 17 sind es nur etwa 600 Millionen, also 3000 mal weniger. Mit der Cpu Zeit für 6x10^8 Möglichkeiten lässt sich grob überschlagen wie lang man für 2x10^12 Möglichkeiten bräuchte, und zwar etwa 8 Jahre. Da hätte ich lange warten können.

Für Zahlen von 1 bis 18 sind es noch erträgliche 36 Stunden.

Jedenfalls schon interessant.

Hier noch zwei weitere Kombinationen für Clemens zur Überprüfung des Algorythmus:

1365
3 3 3 3
3 3 3 3
3 3 3 3
3 3 3 2

6435
5 4 4 4
4 4 4 4
4 4 4 4
4 4 4 1

Ändy hat gesagt…

Was man ntürlich noch machen könnte, ist das Einbringen von Nebenbedingungen, etwa maximal 2 gleiche Zahlen, wie bei Subirachs Quadrat.
Mach ich bestimmt auch nochmal.

clem hat gesagt…

Es würden rapide Einschränkungen entstehen, die das Programm flink machen würden, wenn man es geschickt einbaut. Wenn die ersten 3 Zahlen der Matrix die Nebenbedingungen verletzen, entfallen alle Kombinationen dieser 3 mit beliebigen anderen 13, sofern die Prüfung nicht erst am Schluss mit allen 16 erfolgt.

Ändy hat gesagt…

Soso, ich hab das Programm nochmals verfeinert, und zwar so, dass maximal zwei gleiche Zahlen vorkommen. Ausserdem hab ich nach dem Auftretten der ersten Kombination mit mehr als zwei gleichen Zahlen alle übrigen Kombinationen mit diesen überspringen lassen.

Für Zahlen von 1 bis 17 sind es nun nur noch zwischen 1 und 2 Millionen Möglichkeiten anstatt 600 Millionen. Die CPU-Zeit reduziert sich von 18 Stunden auf 31 Sekunden!

Für Zahlen bis 20 brauch man noch 14.5 Minuten (36 Mille Möglichkeiten)

Programm
Output 1-17
Output 1-20