In Simon's algorithm, why is $f$ one-to-one if (and only if) $s=0^n$?
Clash Royale CLAN TAG#URR8PPP
$begingroup$
I'm dealing with Simon's algorithm a bit and "stumbled" upon something called for the algorithm. It is said that if the period is $s = 0^n$, then it is an injective function, that is, a 1 to 1 function. How can you show that this is so?
Then I would be interested. Moreover, if that is not the case, so $s neq 0^n$, then why is it a 2 to 1 function?
algorithm simons-algorithm
$endgroup$
add a comment |
$begingroup$
I'm dealing with Simon's algorithm a bit and "stumbled" upon something called for the algorithm. It is said that if the period is $s = 0^n$, then it is an injective function, that is, a 1 to 1 function. How can you show that this is so?
Then I would be interested. Moreover, if that is not the case, so $s neq 0^n$, then why is it a 2 to 1 function?
algorithm simons-algorithm
$endgroup$
add a comment |
$begingroup$
I'm dealing with Simon's algorithm a bit and "stumbled" upon something called for the algorithm. It is said that if the period is $s = 0^n$, then it is an injective function, that is, a 1 to 1 function. How can you show that this is so?
Then I would be interested. Moreover, if that is not the case, so $s neq 0^n$, then why is it a 2 to 1 function?
algorithm simons-algorithm
$endgroup$
I'm dealing with Simon's algorithm a bit and "stumbled" upon something called for the algorithm. It is said that if the period is $s = 0^n$, then it is an injective function, that is, a 1 to 1 function. How can you show that this is so?
Then I would be interested. Moreover, if that is not the case, so $s neq 0^n$, then why is it a 2 to 1 function?
algorithm simons-algorithm
algorithm simons-algorithm
edited Feb 7 at 10:36
glS
4,105639
4,105639
asked Feb 4 at 16:17
P_GateP_Gate
935
935
add a comment |
add a comment |
1 Answer
1
active
oldest
votes
$begingroup$
This is basically the definition of the type of function that you apply Simon's algorithm to. You are required to have a function $f(x)$ such that
$$
f(x)=f(y)
$$
if and only if $xoplus y=0$ or $s$.
Hence, if $s$ is all zeros, the outcomes are all unique: if $f(x)=f(y)$ then $x=yoplus 000ldots 0$, but bitwise addition modulo with 0 doesn't change the bit values, so $x=y$.
On the other hand, if $s$ is non-zero, there are exactly two values that give the same value of $f(x)$ since $xoplus00ldots 0=x$, just leaving the distinct $y=xoplus s$.
To add, following a comment. I suspect we need to go further back and understand the notation better. There is a function $f(x)$. It accepts, as an argument, a sequence of $n$ bit values, which we write as a variable $x$ (we write $xin0,1^n$ as a shorthand for conveying it's made up of $n$ bit values). The answer is a sequence of $n$ bit values, which we write as $y=f(x)$. We are promised that $a$, also a sequence of $n$ bit values exists such that
$$
f(x)=f(xoplus a).
$$
The calculation $xoplus a$ has a very specific meaning; we take each bit of $x$ (call the $i^th$ bit $x_i$) and each bit of $x$ and return the sequence where they have been added together modulo 2:
$$
x_ioplus a_i=x_itext XOR a_i=x_i+a_itext mod 2=left{beginarraycc 0 & x_i=a_i \ 1 & x_ineq a_iendarrayright.
$$
So, for example
$$
00110oplus 01010=01100.
$$
A key feature of this bitwise addition function is that
$$
xoplus aoplus a=x.
$$
An example of a suitable $f(x)$ is
$$
beginarrayc
x & 000 & 001 & 010 & 011 & 100 & 101 & 110 & 111 \
f(x) & 010 & 011 & 000 & 001 & 010 & 011 & 000 & 001
endarray
$$
Here, you can see that each value of $f(x)$ is repeated exactly twice. So, we find two values of $x$ that give the same output, say $001$ and $101$. These correspond to values $x$ and $xoplus a$, so we can find $a$ with
$$
a=xoplus(xoplus a)=001oplus101=100.
$$
Then you can check for every $x$ that $f(x)=f(xoplus 100)$.
$endgroup$
$begingroup$
Thanks for your answer, maybe I should clarify something, what I mean. I found this in a lecture: $ f(x) = f (x oplus a) $ (That's understandable for me, I think of the real sine with $+2pi$ and without). Now it comes: $ x, y in 0,1^n, textif x neq y oplus a, text then f(x) neq f(y) $ this part is not understandable to me, what does that say? Thank you for your help!
$endgroup$
– P_Gate
Feb 4 at 16:57
$begingroup$
I suspect there's something you've misunderstood, and we haven't yet stepped far enough back to unpick what the problem is. Where does the sine function come into it?
$endgroup$
– DaftWullie
Feb 5 at 8:40
$begingroup$
The sine does not have to do with that at first, only when I think of a periodic function, I first think of the sine. For this applies yes: $sin(x)=sin(x+2pi)$. And starting from the sinus example, I could think of this as well: $f(x)=f(xoplus a)$ My problem was simply because I also found this in a lecture, which was not completely understandable for me:$x, y in 0,1^n, textif x neq y oplus a, text then f(x) neq f(y) text "Eq: 1"$ I can follow your explanation. Unfortunately this does not answer my implicit question: See "Eq: 1"
$endgroup$
– QuantaMag
Feb 5 at 12:37
add a comment |
Your Answer
StackExchange.ifUsing("editor", function ()
return StackExchange.using("mathjaxEditing", function ()
StackExchange.MarkdownEditor.creationCallbacks.add(function (editor, postfix)
StackExchange.mathjaxEditing.prepareWmdForMathJax(editor, postfix, [["$", "$"], ["\\(","\\)"]]);
);
);
, "mathjax-editing");
StackExchange.ready(function()
var channelOptions =
tags: "".split(" "),
id: "694"
;
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function()
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled)
StackExchange.using("snippets", function()
createEditor();
);
else
createEditor();
);
function createEditor()
StackExchange.prepareEditor(
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: false,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: null,
bindNavPrevention: true,
postfix: "",
imageUploader:
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
,
noCode: true, onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
);
);
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
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fquantumcomputing.stackexchange.com%2fquestions%2f5370%2fin-simons-algorithm-why-is-f-one-to-one-if-and-only-if-s-0n%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
1 Answer
1
active
oldest
votes
1 Answer
1
active
oldest
votes
active
oldest
votes
active
oldest
votes
$begingroup$
This is basically the definition of the type of function that you apply Simon's algorithm to. You are required to have a function $f(x)$ such that
$$
f(x)=f(y)
$$
if and only if $xoplus y=0$ or $s$.
Hence, if $s$ is all zeros, the outcomes are all unique: if $f(x)=f(y)$ then $x=yoplus 000ldots 0$, but bitwise addition modulo with 0 doesn't change the bit values, so $x=y$.
On the other hand, if $s$ is non-zero, there are exactly two values that give the same value of $f(x)$ since $xoplus00ldots 0=x$, just leaving the distinct $y=xoplus s$.
To add, following a comment. I suspect we need to go further back and understand the notation better. There is a function $f(x)$. It accepts, as an argument, a sequence of $n$ bit values, which we write as a variable $x$ (we write $xin0,1^n$ as a shorthand for conveying it's made up of $n$ bit values). The answer is a sequence of $n$ bit values, which we write as $y=f(x)$. We are promised that $a$, also a sequence of $n$ bit values exists such that
$$
f(x)=f(xoplus a).
$$
The calculation $xoplus a$ has a very specific meaning; we take each bit of $x$ (call the $i^th$ bit $x_i$) and each bit of $x$ and return the sequence where they have been added together modulo 2:
$$
x_ioplus a_i=x_itext XOR a_i=x_i+a_itext mod 2=left{beginarraycc 0 & x_i=a_i \ 1 & x_ineq a_iendarrayright.
$$
So, for example
$$
00110oplus 01010=01100.
$$
A key feature of this bitwise addition function is that
$$
xoplus aoplus a=x.
$$
An example of a suitable $f(x)$ is
$$
beginarrayc
x & 000 & 001 & 010 & 011 & 100 & 101 & 110 & 111 \
f(x) & 010 & 011 & 000 & 001 & 010 & 011 & 000 & 001
endarray
$$
Here, you can see that each value of $f(x)$ is repeated exactly twice. So, we find two values of $x$ that give the same output, say $001$ and $101$. These correspond to values $x$ and $xoplus a$, so we can find $a$ with
$$
a=xoplus(xoplus a)=001oplus101=100.
$$
Then you can check for every $x$ that $f(x)=f(xoplus 100)$.
$endgroup$
$begingroup$
Thanks for your answer, maybe I should clarify something, what I mean. I found this in a lecture: $ f(x) = f (x oplus a) $ (That's understandable for me, I think of the real sine with $+2pi$ and without). Now it comes: $ x, y in 0,1^n, textif x neq y oplus a, text then f(x) neq f(y) $ this part is not understandable to me, what does that say? Thank you for your help!
$endgroup$
– P_Gate
Feb 4 at 16:57
$begingroup$
I suspect there's something you've misunderstood, and we haven't yet stepped far enough back to unpick what the problem is. Where does the sine function come into it?
$endgroup$
– DaftWullie
Feb 5 at 8:40
$begingroup$
The sine does not have to do with that at first, only when I think of a periodic function, I first think of the sine. For this applies yes: $sin(x)=sin(x+2pi)$. And starting from the sinus example, I could think of this as well: $f(x)=f(xoplus a)$ My problem was simply because I also found this in a lecture, which was not completely understandable for me:$x, y in 0,1^n, textif x neq y oplus a, text then f(x) neq f(y) text "Eq: 1"$ I can follow your explanation. Unfortunately this does not answer my implicit question: See "Eq: 1"
$endgroup$
– QuantaMag
Feb 5 at 12:37
add a comment |
$begingroup$
This is basically the definition of the type of function that you apply Simon's algorithm to. You are required to have a function $f(x)$ such that
$$
f(x)=f(y)
$$
if and only if $xoplus y=0$ or $s$.
Hence, if $s$ is all zeros, the outcomes are all unique: if $f(x)=f(y)$ then $x=yoplus 000ldots 0$, but bitwise addition modulo with 0 doesn't change the bit values, so $x=y$.
On the other hand, if $s$ is non-zero, there are exactly two values that give the same value of $f(x)$ since $xoplus00ldots 0=x$, just leaving the distinct $y=xoplus s$.
To add, following a comment. I suspect we need to go further back and understand the notation better. There is a function $f(x)$. It accepts, as an argument, a sequence of $n$ bit values, which we write as a variable $x$ (we write $xin0,1^n$ as a shorthand for conveying it's made up of $n$ bit values). The answer is a sequence of $n$ bit values, which we write as $y=f(x)$. We are promised that $a$, also a sequence of $n$ bit values exists such that
$$
f(x)=f(xoplus a).
$$
The calculation $xoplus a$ has a very specific meaning; we take each bit of $x$ (call the $i^th$ bit $x_i$) and each bit of $x$ and return the sequence where they have been added together modulo 2:
$$
x_ioplus a_i=x_itext XOR a_i=x_i+a_itext mod 2=left{beginarraycc 0 & x_i=a_i \ 1 & x_ineq a_iendarrayright.
$$
So, for example
$$
00110oplus 01010=01100.
$$
A key feature of this bitwise addition function is that
$$
xoplus aoplus a=x.
$$
An example of a suitable $f(x)$ is
$$
beginarrayc
x & 000 & 001 & 010 & 011 & 100 & 101 & 110 & 111 \
f(x) & 010 & 011 & 000 & 001 & 010 & 011 & 000 & 001
endarray
$$
Here, you can see that each value of $f(x)$ is repeated exactly twice. So, we find two values of $x$ that give the same output, say $001$ and $101$. These correspond to values $x$ and $xoplus a$, so we can find $a$ with
$$
a=xoplus(xoplus a)=001oplus101=100.
$$
Then you can check for every $x$ that $f(x)=f(xoplus 100)$.
$endgroup$
$begingroup$
Thanks for your answer, maybe I should clarify something, what I mean. I found this in a lecture: $ f(x) = f (x oplus a) $ (That's understandable for me, I think of the real sine with $+2pi$ and without). Now it comes: $ x, y in 0,1^n, textif x neq y oplus a, text then f(x) neq f(y) $ this part is not understandable to me, what does that say? Thank you for your help!
$endgroup$
– P_Gate
Feb 4 at 16:57
$begingroup$
I suspect there's something you've misunderstood, and we haven't yet stepped far enough back to unpick what the problem is. Where does the sine function come into it?
$endgroup$
– DaftWullie
Feb 5 at 8:40
$begingroup$
The sine does not have to do with that at first, only when I think of a periodic function, I first think of the sine. For this applies yes: $sin(x)=sin(x+2pi)$. And starting from the sinus example, I could think of this as well: $f(x)=f(xoplus a)$ My problem was simply because I also found this in a lecture, which was not completely understandable for me:$x, y in 0,1^n, textif x neq y oplus a, text then f(x) neq f(y) text "Eq: 1"$ I can follow your explanation. Unfortunately this does not answer my implicit question: See "Eq: 1"
$endgroup$
– QuantaMag
Feb 5 at 12:37
add a comment |
$begingroup$
This is basically the definition of the type of function that you apply Simon's algorithm to. You are required to have a function $f(x)$ such that
$$
f(x)=f(y)
$$
if and only if $xoplus y=0$ or $s$.
Hence, if $s$ is all zeros, the outcomes are all unique: if $f(x)=f(y)$ then $x=yoplus 000ldots 0$, but bitwise addition modulo with 0 doesn't change the bit values, so $x=y$.
On the other hand, if $s$ is non-zero, there are exactly two values that give the same value of $f(x)$ since $xoplus00ldots 0=x$, just leaving the distinct $y=xoplus s$.
To add, following a comment. I suspect we need to go further back and understand the notation better. There is a function $f(x)$. It accepts, as an argument, a sequence of $n$ bit values, which we write as a variable $x$ (we write $xin0,1^n$ as a shorthand for conveying it's made up of $n$ bit values). The answer is a sequence of $n$ bit values, which we write as $y=f(x)$. We are promised that $a$, also a sequence of $n$ bit values exists such that
$$
f(x)=f(xoplus a).
$$
The calculation $xoplus a$ has a very specific meaning; we take each bit of $x$ (call the $i^th$ bit $x_i$) and each bit of $x$ and return the sequence where they have been added together modulo 2:
$$
x_ioplus a_i=x_itext XOR a_i=x_i+a_itext mod 2=left{beginarraycc 0 & x_i=a_i \ 1 & x_ineq a_iendarrayright.
$$
So, for example
$$
00110oplus 01010=01100.
$$
A key feature of this bitwise addition function is that
$$
xoplus aoplus a=x.
$$
An example of a suitable $f(x)$ is
$$
beginarrayc
x & 000 & 001 & 010 & 011 & 100 & 101 & 110 & 111 \
f(x) & 010 & 011 & 000 & 001 & 010 & 011 & 000 & 001
endarray
$$
Here, you can see that each value of $f(x)$ is repeated exactly twice. So, we find two values of $x$ that give the same output, say $001$ and $101$. These correspond to values $x$ and $xoplus a$, so we can find $a$ with
$$
a=xoplus(xoplus a)=001oplus101=100.
$$
Then you can check for every $x$ that $f(x)=f(xoplus 100)$.
$endgroup$
This is basically the definition of the type of function that you apply Simon's algorithm to. You are required to have a function $f(x)$ such that
$$
f(x)=f(y)
$$
if and only if $xoplus y=0$ or $s$.
Hence, if $s$ is all zeros, the outcomes are all unique: if $f(x)=f(y)$ then $x=yoplus 000ldots 0$, but bitwise addition modulo with 0 doesn't change the bit values, so $x=y$.
On the other hand, if $s$ is non-zero, there are exactly two values that give the same value of $f(x)$ since $xoplus00ldots 0=x$, just leaving the distinct $y=xoplus s$.
To add, following a comment. I suspect we need to go further back and understand the notation better. There is a function $f(x)$. It accepts, as an argument, a sequence of $n$ bit values, which we write as a variable $x$ (we write $xin0,1^n$ as a shorthand for conveying it's made up of $n$ bit values). The answer is a sequence of $n$ bit values, which we write as $y=f(x)$. We are promised that $a$, also a sequence of $n$ bit values exists such that
$$
f(x)=f(xoplus a).
$$
The calculation $xoplus a$ has a very specific meaning; we take each bit of $x$ (call the $i^th$ bit $x_i$) and each bit of $x$ and return the sequence where they have been added together modulo 2:
$$
x_ioplus a_i=x_itext XOR a_i=x_i+a_itext mod 2=left{beginarraycc 0 & x_i=a_i \ 1 & x_ineq a_iendarrayright.
$$
So, for example
$$
00110oplus 01010=01100.
$$
A key feature of this bitwise addition function is that
$$
xoplus aoplus a=x.
$$
An example of a suitable $f(x)$ is
$$
beginarrayc
x & 000 & 001 & 010 & 011 & 100 & 101 & 110 & 111 \
f(x) & 010 & 011 & 000 & 001 & 010 & 011 & 000 & 001
endarray
$$
Here, you can see that each value of $f(x)$ is repeated exactly twice. So, we find two values of $x$ that give the same output, say $001$ and $101$. These correspond to values $x$ and $xoplus a$, so we can find $a$ with
$$
a=xoplus(xoplus a)=001oplus101=100.
$$
Then you can check for every $x$ that $f(x)=f(xoplus 100)$.
edited Feb 5 at 8:54
answered Feb 4 at 16:39
DaftWullieDaftWullie
14.1k1540
14.1k1540
$begingroup$
Thanks for your answer, maybe I should clarify something, what I mean. I found this in a lecture: $ f(x) = f (x oplus a) $ (That's understandable for me, I think of the real sine with $+2pi$ and without). Now it comes: $ x, y in 0,1^n, textif x neq y oplus a, text then f(x) neq f(y) $ this part is not understandable to me, what does that say? Thank you for your help!
$endgroup$
– P_Gate
Feb 4 at 16:57
$begingroup$
I suspect there's something you've misunderstood, and we haven't yet stepped far enough back to unpick what the problem is. Where does the sine function come into it?
$endgroup$
– DaftWullie
Feb 5 at 8:40
$begingroup$
The sine does not have to do with that at first, only when I think of a periodic function, I first think of the sine. For this applies yes: $sin(x)=sin(x+2pi)$. And starting from the sinus example, I could think of this as well: $f(x)=f(xoplus a)$ My problem was simply because I also found this in a lecture, which was not completely understandable for me:$x, y in 0,1^n, textif x neq y oplus a, text then f(x) neq f(y) text "Eq: 1"$ I can follow your explanation. Unfortunately this does not answer my implicit question: See "Eq: 1"
$endgroup$
– QuantaMag
Feb 5 at 12:37
add a comment |
$begingroup$
Thanks for your answer, maybe I should clarify something, what I mean. I found this in a lecture: $ f(x) = f (x oplus a) $ (That's understandable for me, I think of the real sine with $+2pi$ and without). Now it comes: $ x, y in 0,1^n, textif x neq y oplus a, text then f(x) neq f(y) $ this part is not understandable to me, what does that say? Thank you for your help!
$endgroup$
– P_Gate
Feb 4 at 16:57
$begingroup$
I suspect there's something you've misunderstood, and we haven't yet stepped far enough back to unpick what the problem is. Where does the sine function come into it?
$endgroup$
– DaftWullie
Feb 5 at 8:40
$begingroup$
The sine does not have to do with that at first, only when I think of a periodic function, I first think of the sine. For this applies yes: $sin(x)=sin(x+2pi)$. And starting from the sinus example, I could think of this as well: $f(x)=f(xoplus a)$ My problem was simply because I also found this in a lecture, which was not completely understandable for me:$x, y in 0,1^n, textif x neq y oplus a, text then f(x) neq f(y) text "Eq: 1"$ I can follow your explanation. Unfortunately this does not answer my implicit question: See "Eq: 1"
$endgroup$
– QuantaMag
Feb 5 at 12:37
$begingroup$
Thanks for your answer, maybe I should clarify something, what I mean. I found this in a lecture: $ f(x) = f (x oplus a) $ (That's understandable for me, I think of the real sine with $+2pi$ and without). Now it comes: $ x, y in 0,1^n, textif x neq y oplus a, text then f(x) neq f(y) $ this part is not understandable to me, what does that say? Thank you for your help!
$endgroup$
– P_Gate
Feb 4 at 16:57
$begingroup$
Thanks for your answer, maybe I should clarify something, what I mean. I found this in a lecture: $ f(x) = f (x oplus a) $ (That's understandable for me, I think of the real sine with $+2pi$ and without). Now it comes: $ x, y in 0,1^n, textif x neq y oplus a, text then f(x) neq f(y) $ this part is not understandable to me, what does that say? Thank you for your help!
$endgroup$
– P_Gate
Feb 4 at 16:57
$begingroup$
I suspect there's something you've misunderstood, and we haven't yet stepped far enough back to unpick what the problem is. Where does the sine function come into it?
$endgroup$
– DaftWullie
Feb 5 at 8:40
$begingroup$
I suspect there's something you've misunderstood, and we haven't yet stepped far enough back to unpick what the problem is. Where does the sine function come into it?
$endgroup$
– DaftWullie
Feb 5 at 8:40
$begingroup$
The sine does not have to do with that at first, only when I think of a periodic function, I first think of the sine. For this applies yes: $sin(x)=sin(x+2pi)$. And starting from the sinus example, I could think of this as well: $f(x)=f(xoplus a)$ My problem was simply because I also found this in a lecture, which was not completely understandable for me:$x, y in 0,1^n, textif x neq y oplus a, text then f(x) neq f(y) text "Eq: 1"$ I can follow your explanation. Unfortunately this does not answer my implicit question: See "Eq: 1"
$endgroup$
– QuantaMag
Feb 5 at 12:37
$begingroup$
The sine does not have to do with that at first, only when I think of a periodic function, I first think of the sine. For this applies yes: $sin(x)=sin(x+2pi)$. And starting from the sinus example, I could think of this as well: $f(x)=f(xoplus a)$ My problem was simply because I also found this in a lecture, which was not completely understandable for me:$x, y in 0,1^n, textif x neq y oplus a, text then f(x) neq f(y) text "Eq: 1"$ I can follow your explanation. Unfortunately this does not answer my implicit question: See "Eq: 1"
$endgroup$
– QuantaMag
Feb 5 at 12:37
add a comment |
Thanks for contributing an answer to Quantum Computing Stack Exchange!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
Use MathJax to format equations. MathJax reference.
To learn more, see our tips on writing great answers.
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
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fquantumcomputing.stackexchange.com%2fquestions%2f5370%2fin-simons-algorithm-why-is-f-one-to-one-if-and-only-if-s-0n%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
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
Required, but never shown
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
Required, but never shown
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
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown