What is exactly an oracle?
Clash Royale CLAN TAG#URR8PPP
up vote
1
down vote
favorite
I am starting to learn about quantum information and I have a definition I don't really understand.
What is what we call an oracle exactly ? On wikipedia it is said it is a "blackbox" but it is not totally clear for me.
For Deutch Algorithm for example (it is the only one I learnt up to now), is simply the oracle the box $U_f$ ? Is it everything between the measurement and the inputs (thus including the Hadamar gates) ?
And to give the Oracle do I need to write $U_f$ in matrix form or the condensed form : $U_f$ gives $y rightarrow y oplus f(x)$ and $x rightarrow x$ is enough with respect to the definition of an oracle ?
It is just a question of definition but as it is a very common term I would like to be sure of what it exactly means.
quantum-information
New contributor
StarBucK is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.
add a comment |Â
up vote
1
down vote
favorite
I am starting to learn about quantum information and I have a definition I don't really understand.
What is what we call an oracle exactly ? On wikipedia it is said it is a "blackbox" but it is not totally clear for me.
For Deutch Algorithm for example (it is the only one I learnt up to now), is simply the oracle the box $U_f$ ? Is it everything between the measurement and the inputs (thus including the Hadamar gates) ?
And to give the Oracle do I need to write $U_f$ in matrix form or the condensed form : $U_f$ gives $y rightarrow y oplus f(x)$ and $x rightarrow x$ is enough with respect to the definition of an oracle ?
It is just a question of definition but as it is a very common term I would like to be sure of what it exactly means.
quantum-information
New contributor
StarBucK is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.
add a comment |Â
up vote
1
down vote
favorite
up vote
1
down vote
favorite
I am starting to learn about quantum information and I have a definition I don't really understand.
What is what we call an oracle exactly ? On wikipedia it is said it is a "blackbox" but it is not totally clear for me.
For Deutch Algorithm for example (it is the only one I learnt up to now), is simply the oracle the box $U_f$ ? Is it everything between the measurement and the inputs (thus including the Hadamar gates) ?
And to give the Oracle do I need to write $U_f$ in matrix form or the condensed form : $U_f$ gives $y rightarrow y oplus f(x)$ and $x rightarrow x$ is enough with respect to the definition of an oracle ?
It is just a question of definition but as it is a very common term I would like to be sure of what it exactly means.
quantum-information
New contributor
StarBucK is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.
I am starting to learn about quantum information and I have a definition I don't really understand.
What is what we call an oracle exactly ? On wikipedia it is said it is a "blackbox" but it is not totally clear for me.
For Deutch Algorithm for example (it is the only one I learnt up to now), is simply the oracle the box $U_f$ ? Is it everything between the measurement and the inputs (thus including the Hadamar gates) ?
And to give the Oracle do I need to write $U_f$ in matrix form or the condensed form : $U_f$ gives $y rightarrow y oplus f(x)$ and $x rightarrow x$ is enough with respect to the definition of an oracle ?
It is just a question of definition but as it is a very common term I would like to be sure of what it exactly means.
quantum-information
quantum-information
New contributor
StarBucK is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.
New contributor
StarBucK is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.
New contributor
StarBucK is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.
asked 1 hour ago
StarBucK
1083
1083
New contributor
StarBucK is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.
New contributor
StarBucK is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.
StarBucK is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.
add a comment |Â
add a comment |Â
1 Answer
1
active
oldest
votes
up vote
2
down vote
accepted
An oracle (at least in this context) is simply an operation that has some property that you don't know, and are trying to find out. The term "black box" is used equivalently, to convey the idea that it's just a box that you can't see inside, and hence you don't know what it's doing. All you know is that you can supply inputs and receive outputs. In the circuit diagram you depict, it is just the $U_f$ box. Everything else is stuff that you are adding in order order to help interrogate the oracle and discover its properties.
To give the oracle, you can write it in any valid form that defines a map from all possible inputs to outputs. This could be a matrix (presumably with an unknown parameter), or it could be the map $U:(x,y)mapsto (x,yoplus f(x))$ (strictly, $forall x,yin0,1$), because given either description, you can work out the other.
add a comment |Â
1 Answer
1
active
oldest
votes
1 Answer
1
active
oldest
votes
active
oldest
votes
active
oldest
votes
up vote
2
down vote
accepted
An oracle (at least in this context) is simply an operation that has some property that you don't know, and are trying to find out. The term "black box" is used equivalently, to convey the idea that it's just a box that you can't see inside, and hence you don't know what it's doing. All you know is that you can supply inputs and receive outputs. In the circuit diagram you depict, it is just the $U_f$ box. Everything else is stuff that you are adding in order order to help interrogate the oracle and discover its properties.
To give the oracle, you can write it in any valid form that defines a map from all possible inputs to outputs. This could be a matrix (presumably with an unknown parameter), or it could be the map $U:(x,y)mapsto (x,yoplus f(x))$ (strictly, $forall x,yin0,1$), because given either description, you can work out the other.
add a comment |Â
up vote
2
down vote
accepted
An oracle (at least in this context) is simply an operation that has some property that you don't know, and are trying to find out. The term "black box" is used equivalently, to convey the idea that it's just a box that you can't see inside, and hence you don't know what it's doing. All you know is that you can supply inputs and receive outputs. In the circuit diagram you depict, it is just the $U_f$ box. Everything else is stuff that you are adding in order order to help interrogate the oracle and discover its properties.
To give the oracle, you can write it in any valid form that defines a map from all possible inputs to outputs. This could be a matrix (presumably with an unknown parameter), or it could be the map $U:(x,y)mapsto (x,yoplus f(x))$ (strictly, $forall x,yin0,1$), because given either description, you can work out the other.
add a comment |Â
up vote
2
down vote
accepted
up vote
2
down vote
accepted
An oracle (at least in this context) is simply an operation that has some property that you don't know, and are trying to find out. The term "black box" is used equivalently, to convey the idea that it's just a box that you can't see inside, and hence you don't know what it's doing. All you know is that you can supply inputs and receive outputs. In the circuit diagram you depict, it is just the $U_f$ box. Everything else is stuff that you are adding in order order to help interrogate the oracle and discover its properties.
To give the oracle, you can write it in any valid form that defines a map from all possible inputs to outputs. This could be a matrix (presumably with an unknown parameter), or it could be the map $U:(x,y)mapsto (x,yoplus f(x))$ (strictly, $forall x,yin0,1$), because given either description, you can work out the other.
An oracle (at least in this context) is simply an operation that has some property that you don't know, and are trying to find out. The term "black box" is used equivalently, to convey the idea that it's just a box that you can't see inside, and hence you don't know what it's doing. All you know is that you can supply inputs and receive outputs. In the circuit diagram you depict, it is just the $U_f$ box. Everything else is stuff that you are adding in order order to help interrogate the oracle and discover its properties.
To give the oracle, you can write it in any valid form that defines a map from all possible inputs to outputs. This could be a matrix (presumably with an unknown parameter), or it could be the map $U:(x,y)mapsto (x,yoplus f(x))$ (strictly, $forall x,yin0,1$), because given either description, you can work out the other.
answered 57 mins ago
DaftWullie
9,7371332
9,7371332
add a comment |Â
add a comment |Â
StarBucK is a new contributor. Be nice, and check out our Code of Conduct.
StarBucK is a new contributor. Be nice, and check out our Code of Conduct.
StarBucK is a new contributor. Be nice, and check out our Code of Conduct.
StarBucK is a new contributor. Be nice, and check out our Code of Conduct.
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fquantumcomputing.stackexchange.com%2fquestions%2f4625%2fwhat-is-exactly-an-oracle%23new-answer', 'question_page');
);
Post as a guest
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password