00:00:18 <lament> holy crap i think this is working
00:00:46 <lament> TypeError: can't multiply sequence by non-int
00:09:49 <lament> ihope: oddly, the problem i'm encountering is that H behaves like its own inverse...
00:10:01 <ihope> It is its own inverse.
00:10:32 <ihope> Well, it was last time I checked.
00:10:45 <lament> isn't it supposed to flip 0 to 1 after two applications?
00:12:45 <lament> if that is true, then my program is working correctly
00:12:57 * lament implements controlled not
00:15:12 <ihope> In quantum brainfuck, you mean?
00:16:38 <lament> i now have a quantum register simulator
00:17:04 <lament> i just need to write a parser and the actual interpreter to make it a quantum brainfuck interpreter
00:17:15 <lament> but now i'm just playing with the simulator
00:18:21 <lament> do you have your simulator?
00:18:36 <lament> can you tell me some simple tests to do with two qubits, hadamard and cnot?
00:19:36 <ihope> Start with two qubits, A and B, both initialized to 0. Perform Hadamard on A, then perform CNOT with A as the control and B as the target, then observe one and look at the wavefunction for the other.
00:20:18 <ihope> The bit you observed should be the same as the bit that's set to 1, and the other one should be set to 0.
00:20:45 <ihope> That is, after observing one, both should be the same constant value.
00:20:59 <lament> i haven't actually implemented observing yet :)
00:21:03 <lament> also, something's broken anyway
00:21:38 <ihope> Well, you don't have to observe anything to see if they're entangled or not. Just dump the wavefunction, and both |01> and |10> should be zero.
00:23:27 <lament> my thing's completely broken, i think
00:28:57 <lament> it passes your test, anyway
00:29:21 <lament> output's gonna be a bitch
00:29:42 <lament> since you're highly likely to collapse pretty much everything when you observe one qubit
00:30:04 <ihope> Well, it doesn't have to collapse completely.
00:30:08 <lament> also i'm not sure how to collapse stuff :)
00:30:36 <ihope> If you have some equally weighted |00>, |01>, and |10>, and you observe the first qubit to be zero, what happens?
00:31:34 <ihope> I'm not actually completely sure, but I think you end up with |00> and |01>.
00:33:02 -!- tgwizard has quit ("Leaving").
00:33:17 <lament> the probability of |10> is updated to be 0
00:33:41 <lament> this in turns causes teh probabilities of the other two two increase from 1/3 to 1/2 so it still adds up to 1
00:33:56 <lament> I think i'll just collapse the whole register for now :)
00:34:44 <lament> nice, applying hadamard and c-not to two bits in a 10-qubit register is nearly instantaneous
00:35:10 <lament> 15 qubits took about two seconds
00:36:17 <lament> the practical limit then is somewhere between 15-20 qubits
00:37:51 <lament> 10 seconds for 17 qubits
00:38:37 <lament> 20 seconds for 18 qubits, and it keeps doubling
00:39:49 <ihope> Well, remember to optimize the things that aren't entangled.
00:40:17 <lament> that would involve completley changing the algorithm
00:40:23 -!- pikhq has quit (Read error: 104 (Connection reset by peer)).
00:40:59 <lament> i'll do that eventually
00:41:01 -!- fuse has quit ("ircII EPIC4-2.0 -- Are we there yet?").
00:41:57 <ihope> If two things aren't entangled, keep them in separate registers.
00:43:15 <lament> aside from the stuff you haven't touched yet, it's nearly impossible to tell if two things are entangled or not
00:44:56 <ihope> Well, just do the ones that you haven't touched yet.
00:47:38 <ihope> Hmm, so apparently the Z gate is |0> -> |0>; |1> -> -|1>.
00:57:38 -!- AndrewNP has joined.
00:58:00 -!- jix has quit ("Bitte waehlen Sie eine Beerdigungnachricht").
01:15:45 -!- Sgeo has joined.
02:26:34 -!- puzzlet has quit (Remote closed the connection).
02:26:58 -!- puzzlet has joined.
02:37:16 -!- puzzlet has quit (Read error: 104 (Connection reset by peer)).
02:38:25 -!- puzzlet has joined.
03:10:35 <AndrewNP> ihope: I saw your new version of Quantum BF. My only complaint is that it seems designed more for quantum compy _simulators_ than actual QCs.
03:10:43 <AndrewNP> Otherwise, it looketh pretty awesome.
03:24:28 -!- ihope has quit (Read error: 110 (Connection timed out)).
03:38:12 -!- GregorR has quit (Remote closed the connection).
04:09:41 -!- GregorR has joined.
06:04:47 <AndrewNP> http://www.esolangs.org/wiki/Quantum_brainfuck
06:05:11 <AndrewNP> Version 2: this one is supposedly "quantum complete."
06:15:04 -!- AndrewNP has quit.
07:01:10 -!- thematrixeatsyou has joined.
07:44:57 -!- thematrixeatsyou has quit ("food").
07:59:59 -!- clog has quit (ended).
08:00:00 -!- clog has joined.
08:01:23 -!- GregorR-W has quit (Remote closed the connection).
08:02:14 -!- GregorR-W has joined.
08:24:52 -!- Sgeo has quit ("Ex-Chat").
10:08:43 -!- jix has joined.
10:57:27 -!- puzzlet has quit (Remote closed the connection).
11:02:31 -!- tgwizard has joined.
11:08:15 -!- puzzlet has joined.
13:01:57 -!- jix has quit (kornbluth.freenode.net irc.freenode.net).
13:01:57 -!- sekhmet has quit (kornbluth.freenode.net irc.freenode.net).
13:03:21 -!- GregorR has quit (kornbluth.freenode.net irc.freenode.net).
13:06:09 -!- GregorR has joined.
13:09:11 -!- pgimeno has quit (kornbluth.freenode.net irc.freenode.net).
13:09:23 -!- fizzie has quit (kornbluth.freenode.net irc.freenode.net).
13:09:26 -!- pgimeno has joined.
13:12:38 -!- fizzie has joined.
14:22:25 -!- kipple has joined.
14:51:27 -!- sekhmet has joined.
16:05:18 -!- ihope has joined.
16:32:26 -!- GregorR-W has changed nick to GregorR-.
16:32:41 -!- GregorR- has changed nick to GregorR-W.
16:47:16 -!- Arrogant has joined.
16:49:33 -!- Arrogant has quit (Client Quit).
16:57:41 -!- clog has joined.
16:57:41 -!- clog has joined.
17:06:39 -!- EgoBot has joined.
17:34:46 -!- kipple has quit (kornbluth.freenode.net irc.freenode.net).
17:34:47 -!- sekhmet has quit (kornbluth.freenode.net irc.freenode.net).
17:34:47 -!- GregorR has quit (kornbluth.freenode.net irc.freenode.net).
17:34:47 -!- tgwizard has quit (kornbluth.freenode.net irc.freenode.net).
17:34:53 -!- fizzie has quit (kornbluth.freenode.net irc.freenode.net).
17:36:01 -!- tgwizard has joined.
17:36:10 -!- GregorR has joined.
17:36:17 -!- kipple has joined.
17:37:00 <lament> this is from wikipedia:
17:37:02 <lament> "In fact, Richard Feynman (1982) showed that a quantum system cannot be probabilistically simulated by a classical computer. a quantum computer is required."
17:40:30 -!- clog has joined.
17:40:30 -!- clog has joined.
17:40:31 -!- GregorR has joined.
17:41:39 -!- mtve has joined.
17:41:41 -!- kipple has joined.
17:42:10 -!- tgwizard has joined.
17:43:04 -!- SimonRC has joined.
17:43:12 -!- sp3tt has joined.
17:43:22 -!- cmeme has joined.
17:43:51 -!- GregorR-W has joined.
17:44:22 -!- ihope has joined.
17:44:46 -!- sekhmet has joined.
17:46:43 <ihope> And added {{fact}} :-)
17:53:45 -!- lament has joined.
17:54:36 -!- puzzlet has joined.
17:54:37 <ihope> Found it. And added {{fact}} :-)
17:55:04 <ihope> Anyway, I just realized that the answer is very simple.
17:55:34 <ihope> All I need is a Toffoli gate.
17:57:14 <ihope> ...Nope, won't work.
17:58:51 <ihope> They're not entangled.
18:03:23 <ihope> Maybe it's impossible to make a controlled Hadamard gate. If we have two entangled copies of one qubit, both known to be |0>, |1>, |+>, or |->, and controlled Hadamard is applied to them...
18:04:51 -!- fizzie has joined.
18:05:43 <ihope> |00> would give |00>, and |11> would give D(|10> - |11>), |++> would give D(|00> + D(|10> - |11>)), and |--> would give D(|00> - D(|10> - |11>)).
18:07:16 -!- jix_ has joined.
18:08:21 <ihope> Distribute those, and you get |00> and D|10> - D|11> and D|00> + DD|10> - DD|11> and D|00> - DD|10> + DD|11>.
18:15:23 <ihope> It looks possible so far...
18:22:28 -!- CXI has quit (Read error: 148 (No route to host)).
18:25:51 -!- CXI has joined.
18:37:54 -!- jix_ has changed nick to jix.
20:10:52 -!- lindi- has quit (Read error: 131 (Connection reset by peer)).
20:16:11 -!- lindi- has joined.
20:31:23 -!- Sgeo has joined.
21:41:25 <lament> dealing with IO is hard
21:41:58 <lament> in real quantum computers, IO is performed only on the entire register
21:42:24 <lament> i.e. you set it to some state first, and then you read off the result.
21:42:31 <lament> you don't check individual qubits.
21:57:58 <ihope> Couldn't you do that in a real quantum computer?
21:58:37 <lament> it's probably not desirable
21:58:44 <lament> since it would most likely destroy all entanglement
21:58:56 <lament> any serious quantum computation would entangle everything
21:59:09 <ihope> Ask a quantum physicist!
21:59:13 <lament> then measuring one qubit screws up everything else
22:45:40 <ihope> http://ars.userfriendly.org/cartoons/read.cgi?id=20060721&tid=2140436
22:46:41 <ihope> Um, that doesn't destroy everything.
22:47:32 <lament> 13:58 <lament> any serious quantum computation would entangle everything
22:47:37 <lament> that's not a serious computation :)
22:49:00 <ihope> I'm sure it's possible to write a serious quantum computation that can work interactively.
23:31:14 -!- tgwizard has quit (Remote closed the connection).