Dies ist eine statische Kopie unseres alten Forums. Es sind keine Interaktionen möglich.
This is a static copy of our old forum. Interactions are not possible.
  • "henning_schnoor" is male
  • "henning_schnoor" started this thread

Posts: 25

Date of registration: Sep 29th 2004

Location: Hattstedt

Occupation: Ich krieg Geld dafür!

1

Monday, January 30th 2006, 4:38pm

Probeklausur Quantenrechner

Moin Forum,

die Probeklausur zur Vorlesung Quantenrechner ist jetzt online, unter http://www.thi.uni-hannover.de/lehre/ws0…obe_klausur.pdf

Die echte Klausur wird natürlich nicht genau so - sie wird wohl ein bisschen länger, dafür werden aber natürlich nicht so ausführliche Rechnungen verlangt. WIr hoffen aber, dass die Probeklausur zumindest einen gewissen Eindruck gibt, mit welcher Art von Fragen gerechnet werden kann.

Im März gibt es dann noch eine Übung zur Klausurvorbereitung. Da wird diese Probeklausur besprochen (eine Lösung stelle ich aber die nächsten Tage sowieso ins Netz), und ihr könnt Fragen stellen.

Was den Termin der Übung angeht, bin ich recht flexibel. Ich würde vorschlagen, so etwa zwei bis drei Wochen vor der Klausur - früher hat sowieso vermutlich niemand mit der Vorbereitung angefangen, und später wird es dann vielleicht auch etwas eng.

Die Klausur findet statt am 4. April, von 9:00-11:30, F102 im Hauptgebäude.

Also: Terminvorschläge am besten hier im Forum posten, dann können wir das ganz demokratisch regeln!

Bis dann,
Henning

Ray-D

Alter Hase

  • "Ray-D" is male

Posts: 690

Date of registration: Oct 9th 2002

Location: Zimbabwe-Island Ost Beiträge: 3.427

Occupation: Informatiker

2

Monday, January 30th 2006, 5:03pm

bezüglich der übung: mir persönlich würde nach dem 20.3. am besten passen, da am 20.3. die DBS IIa-Klausur stattfindet.
"ob ich alles weiss, was wir wissen, weiss ich auch nicht, aber ich weiss natürlich niemand von uns weiss etwas was er nicht weiss" - Wolgang Schäuble
Freiheit wird nicht erbettelt, sondern erkämpft


Dieser Beitrag wurde bereits 7 mal editiert, zuletzt von »Ray-D« (Heute, 04:29)

Benjamin

Segelnder Alter Hase

  • "Benjamin" is male

Posts: 3,827

Date of registration: Oct 1st 2002

Location: Region Hannover

Occupation: Alumni

3

Monday, January 30th 2006, 6:41pm

Senf: "(Nach dem 14.03. 12 Uhr) und (nicht am 28./29.03 oder wenigstens nicht am 29.03. zwischen 9 und 12 Uhr). wäre wünschenswert für die Übung"
Es gibt nur eine bessere Sache als auf dem Wasser zu sein: Noch mehr auf dem Wasser sein.

dfex

Junior Schreiberling

  • "dfex" is male

Posts: 248

Date of registration: Dec 11th 2001

4

Friday, March 17th 2006, 3:35pm

Erinnerung an alle Quantenschreiber:

Quoted

Quelle: http://www.thi.uni-hannover.de/lehre/ws05/quan/
Die Klausurvorbereitungsübung zur Vorlesung Quantenrechner findet am 21. März, von 9:00-11:00 im Raum A310 (Hauptgebäude) statt.

Ray-D

Alter Hase

  • "Ray-D" is male

Posts: 690

Date of registration: Oct 9th 2002

Location: Zimbabwe-Island Ost Beiträge: 3.427

Occupation: Informatiker

5

Wednesday, March 22nd 2006, 5:52pm

Hallo Quantenteam,

ich habe eine Frage:
Angenommen wir haben zwei QuBits |00> und wenden auf beide QuBits einzeld H an. Dann erhalten wir

1/2 * (|00>+|01>+|10>+|11>).

Soweit so gut. Nun heißt es aber, dass man mit Hilfe des Tensorproduktes die Operation mit H auch auf dem ganzen Register ausführen kann (also nicht auf jedem QuBit einzelnd).

Erneut betrachten wir als Register |00>

H_2 = H tensorprodukt H

H_2 = 1/2 *(
1 1 1 1
1 -1 1 -1
1 1 -1 -1
1 -1 -1 1
)

Das Register |00> sollte, wenn ich das richtig verstehe, als Vektor so aussehen:

V=(1,0,1,0)^T

H_2 * V sollte demnach ebenfalls 1/2 * (|00>+|01>+|10>+|11>) werden. Ich erhalte hier aber einen Verktor V' = (1,1,0,0)^T. Meinem Verständnis nach, hätte V'=(1/2,1/2,1/2,1/2)^T sein sollen.

Weiss vielleicht jemand Rat? Ich wäre sehr dankbar!
"ob ich alles weiss, was wir wissen, weiss ich auch nicht, aber ich weiss natürlich niemand von uns weiss etwas was er nicht weiss" - Wolgang Schäuble
Freiheit wird nicht erbettelt, sondern erkämpft


Dieser Beitrag wurde bereits 7 mal editiert, zuletzt von »Ray-D« (Heute, 04:29)

  • "Joachim" is male

Posts: 2,863

Date of registration: Dec 11th 2001

Location: Hämelerwald

Occupation: Wissenschaftlicher Mitarbeiter (Forschungszentrum L3S, TU Braunschweig)

6

Wednesday, March 22nd 2006, 6:04pm

Quoted

Original von Ray-D
Das Register |00> sollte, wenn ich das richtig verstehe, als Vektor so aussehen:

V=(1,0,1,0)^T
Nein, es gilt:

(1, 0, 0, 0)^T = |00>
(0, 1, 0, 0)^T = |01>
(0, 0, 1, 0)^T = |10>
(0, 0, 0, 1)^T = |11>
The purpose of computing is insight, not numbers.
Richard Hamming, 1962

Ray-D

Alter Hase

  • "Ray-D" is male

Posts: 690

Date of registration: Oct 9th 2002

Location: Zimbabwe-Island Ost Beiträge: 3.427

Occupation: Informatiker

7

Wednesday, March 22nd 2006, 6:12pm

Danke schön, Joachim! :)
"ob ich alles weiss, was wir wissen, weiss ich auch nicht, aber ich weiss natürlich niemand von uns weiss etwas was er nicht weiss" - Wolgang Schäuble
Freiheit wird nicht erbettelt, sondern erkämpft


Dieser Beitrag wurde bereits 7 mal editiert, zuletzt von »Ray-D« (Heute, 04:29)

Ray-D

Alter Hase

  • "Ray-D" is male

Posts: 690

Date of registration: Oct 9th 2002

Location: Zimbabwe-Island Ost Beiträge: 3.427

Occupation: Informatiker

8

Thursday, March 23rd 2006, 4:43pm

Tachchen, nochmal ich.

Ich habe eine Frage zum Deutsch-Jozsa-Algorithmus.

Wir haben ein |x> = |x_{n-1} ... x_0>|y> <- |0...0>|1>. Messen wir am Ende |x> = 0 => f ist konstant.

heißt dass |x> != 0 => f ist balanciert (egal was für |x> gemesen wird)? bzw. wie hängt dieses |x>, das wir Messen mit f zusammen. Der Algorithmus von Bernstein-Vazirani besagt im 5. Schritt:

Ist |x> = |a>: Ausgabe "Das Bauteil berechnet die Funktion f_{a}(x) = a*x." Könnte jemand dazu ein Beispiel geben? Es ist mir leider nicht klar, wie das funktioniert :(

Vielen Dank!
"ob ich alles weiss, was wir wissen, weiss ich auch nicht, aber ich weiss natürlich niemand von uns weiss etwas was er nicht weiss" - Wolgang Schäuble
Freiheit wird nicht erbettelt, sondern erkämpft


Dieser Beitrag wurde bereits 7 mal editiert, zuletzt von »Ray-D« (Heute, 04:29)

  • "henning_schnoor" is male
  • "henning_schnoor" started this thread

Posts: 25

Date of registration: Sep 29th 2004

Location: Hattstedt

Occupation: Ich krieg Geld dafür!

9

Friday, March 24th 2006, 9:22am

Quoted

Wir haben ein |x> = |x_{n-1} ... x_0>|y> <- |0...0>|1>. Messen wir am Ende |x> = 0 => f ist konstant.

heißt dass |x> != 0 => f ist balanciert (egal was für |x> gemesen wird)? bzw. wie hängt dieses |x>, das wir Messen mit f zusammen.


Genau das heisst es. In dem Beweis wird ja gezeigt, dass folgendes gilt:

1) Ist f konstant, so ist die Wahrscheinlichkeit, den Wert |0...0> zu messen, gleich 1. Da wir einen endlichen Ereignisraum haben bedeutet dies, dass der Wert |0...0> auf jeden Fall gemessen wird.

2) Ist f nicht konstant, also nach Aufgabenstellung balanciert (andere Fälle sind ja ausgeschlossen), so wird der Wert |0...0> mit Wahrscheinlichkeit 0, also wegen des endlichen Ereignisraumes auf keinen Fall gemessen.

Zusammengefasst also: Der Wert |0...0> wird genau dann gemessen, wenn f konstant ist. Also genau so, wie Du es oben geschrieben hast. Welcher Wert konkret gemessen wird ist tatsächlich egal, es interessiert nur die Frage, ob er |0...0> oder irgend etwas anderes ist.

Quoted

Der Algorithmus von Bernstein-Vazirani besagt im 5. Schritt:

Ist |x> = |a>: Ausgabe "Das Bauteil berechnet die Funktion f_{a}(x) = a*x." Könnte jemand dazu ein Beispiel geben? Es ist mir leider nicht klar, wie das funktioniert


Was ist Dir genau nicht klar? Die Definition der Multiplikation? a und x sind hier beides Binärstrings, also endliche, gleich lange Folgen von 0 und 1. Sei z.B.

a = (a_1, ..., a_n)
x = (x_1, ..., x_n)

Dann ist a*x definiert als das Skalarpdodukt dieser Vektoren über dem Körper Z_2, also kommt da raus:

a*x = a_1*x_1 + a_2*x_2 + ... + a_n*x_n,

wobei die Addition modulo 2 geschieht. Das Ergebnis ist also entweder 1 oder 0.

Beantwortet das Deine Frage?

Viele Grüße,
Henning

  • "Joachim" is male

Posts: 2,863

Date of registration: Dec 11th 2001

Location: Hämelerwald

Occupation: Wissenschaftlicher Mitarbeiter (Forschungszentrum L3S, TU Braunschweig)

10

Friday, March 24th 2006, 10:33am

Quoted

Original von henning_schnoor

Quoted

Der Algorithmus von Bernstein-Vazirani besagt im 5. Schritt:

Ist |x> = |a>: Ausgabe "Das Bauteil berechnet die Funktion f_{a}(x) = a*x." Könnte jemand dazu ein Beispiel geben? Es ist mir leider nicht klar, wie das funktioniert


Was ist Dir genau nicht klar? Die Definition der Multiplikation? a und x sind hier beides Binärstrings, also endliche, gleich lange Folgen von 0 und 1. Sei z.B.

a = (a_1, ..., a_n)
x = (x_1, ..., x_n)

Dann ist a*x definiert als das Skalarpdodukt dieser Vektoren über dem Körper Z_2, also kommt da raus:

a*x = a_1*x_1 + a_2*x_2 + ... + a_n*x_n,

wobei die Addition modulo 2 geschieht. Das Ergebnis ist also entweder 1 oder 0.
Vielleicht etwas anschaulicher: Wir bilden die Parität von x bezüglich der durch a ausgewählten Bits (ausgewählt = 1).

Beispiel: a = (110)
a * (111) = Parität von 11 = 0
a * (010) = Parität von 01 = 1
The purpose of computing is insight, not numbers.
Richard Hamming, 1962

Ray-D

Alter Hase

  • "Ray-D" is male

Posts: 690

Date of registration: Oct 9th 2002

Location: Zimbabwe-Island Ost Beiträge: 3.427

Occupation: Informatiker

11

Saturday, March 25th 2006, 3:06pm

Danke euch Beiden! Konnte leider noch nicht antworten, weil ich leider ständig Probleme damit habe das Forum aufzurufen...

also ich habs leider noch nicht ganz verstanden :(
ich dachte |x> soll gleich |a> sein. Das trifft auf Dein Beispiel nicht zu Joachim (a=(110) und x=(010)). Vielleicht kannst Du mir das nochmal erklären.

Der springende Punkt ist, dass ich nicht erkenne, wie denn nun |x>, |a> (vorallem, woher kommt plötzlich |a>?) mit der Funktion f zusammenhängen.

Es soll doch so sein, dass ich als Lösung 1 bekomme, wenn ich die Funktion "gefunden" habe, die diese Blackbox ausführt, oder? *schon ganz verwirrt bin*
"ob ich alles weiss, was wir wissen, weiss ich auch nicht, aber ich weiss natürlich niemand von uns weiss etwas was er nicht weiss" - Wolgang Schäuble
Freiheit wird nicht erbettelt, sondern erkämpft


Dieser Beitrag wurde bereits 7 mal editiert, zuletzt von »Ray-D« (Heute, 04:29)

  • "Joachim" is male

Posts: 2,863

Date of registration: Dec 11th 2001

Location: Hämelerwald

Occupation: Wissenschaftlicher Mitarbeiter (Forschungszentrum L3S, TU Braunschweig)

12

Saturday, March 25th 2006, 4:46pm

Quoted

Original von Ray-D
also ich habs leider noch nicht ganz verstanden :(
ich dachte |x> soll gleich |a> sein. Das trifft auf Dein Beispiel nicht zu Joachim (a=(110) und x=(010)). Vielleicht kannst Du mir das nochmal erklären.
Das Beispiel bezog sich auch nur auf die Bedeutung des Ausdrucks a * b für zwei Bitvektoren a und b.

Quoted

Der springende Punkt ist, dass ich nicht erkenne, wie denn nun |x>, |a> (vorallem, woher kommt plötzlich |a>?) mit der Funktion f zusammenhängen.
Die Problemstellung beim Algorithmus von Bernstein und Vazirani ist die folgende:

Gegeben (als Orakelgatter U_f) ist eine Funktion f : {0, 1}^n -> {0, 1}, die die Eigenschaft f(x) = x * a für einen Bitvektor a \in {0, 1}^n besitzt. U_f ist also gewissermaßen die Eingabe des Algorithmus.

Gesucht ist nun der Vektor a, der zu der gegebenen Funktion gehört. Da es 2^n verschiedene Bitvektoren der Länge n gibt, gibt es auch 2^n verschiedene solche Funktionen. Die Funktion dieser Art, zu der ein Bitvektor a gehört, bezeichnen wir dann als f_a.

Ist also die Funktion f die Eingabe des Algorithmus, so suchen wir den Bitvektor a, so daß gilt f = f_a.

Lag die Unklarheit an dieser Stelle oder habe ich dich falsch verstanden?
The purpose of computing is insight, not numbers.
Richard Hamming, 1962

This post has been edited 1 times, last edit by "Joachim" (Mar 25th 2006, 4:47pm)


Ray-D

Alter Hase

  • "Ray-D" is male

Posts: 690

Date of registration: Oct 9th 2002

Location: Zimbabwe-Island Ost Beiträge: 3.427

Occupation: Informatiker

13

Friday, March 31st 2006, 12:49am

Ja, da lag mein Problem, obwohl ich es auch mit der Erklärung vorerst auch nicht verstanden habe. Doch nach hundert mal hin und herüberlegen (und rechnen!) habe ich es, denke ich, endlich (eben gerade) verstanden! Das war mal ne schwere Geburt. Eine kleine Rechnung in der Übung hätte mir sicherlich geholfen. Die Lösung zu Übung 3 war zwar schon hilfreich aber auch noch sehr allgemein gehalten, daher fiel es mir relativ schwer jeden Schritt auf anhieb zu verstehen.

Danke nochmal an alle beteiligten Personen! :)
"ob ich alles weiss, was wir wissen, weiss ich auch nicht, aber ich weiss natürlich niemand von uns weiss etwas was er nicht weiss" - Wolgang Schäuble
Freiheit wird nicht erbettelt, sondern erkämpft


Dieser Beitrag wurde bereits 7 mal editiert, zuletzt von »Ray-D« (Heute, 04:29)