From 9416dd621466c2d976761ebae2c2aae3d7bc006a Mon Sep 17 00:00:00 2001 From: Aly Date: Fri, 12 Sep 2025 09:37:24 -0600 Subject: [PATCH] inner product --- computational-diffie-hellman.md | 2 +- controlled-not.md | 2 +- decisional-diffie-hellman.md | 2 +- inner-product.md | 13 +++++++++++++ ket.md | 2 +- np-complete.md | 4 ++-- np-hard.md | 4 ++-- np.md | 2 +- quantum-state.md | 4 ++++ toffoli-gate.md | 4 ++-- 10 files changed, 28 insertions(+), 11 deletions(-) create mode 100644 inner-product.md create mode 100644 quantum-state.md diff --git a/computational-diffie-hellman.md b/computational-diffie-hellman.md index 2f51f74..1a15ec9 100644 --- a/computational-diffie-hellman.md +++ b/computational-diffie-hellman.md @@ -1,4 +1,4 @@ # Computational Diffie–Hellman -- computational version of [[decisional-diffie-hellman|Decisional Diffie–Hellman]] +- computational version of [[decisional-diffie-hellman]] - given a generator $`g`$ and uniformly selected $`\left(g^a, g^b\right)`$, compute $`g^{ab}`$ diff --git a/controlled-not.md b/controlled-not.md index d4ce39e..00d2f6d 100644 --- a/controlled-not.md +++ b/controlled-not.md @@ -1,6 +1,6 @@ # Controlled Not -- [[quantum-computing|Quantum Computing]] +- [[quantum-computing]] - [[push]] [[CNOT]] - quantum equivalent of XOR - written $`\operatorname{CNOT}_{1 \rarr 2}`$ for when $`\left(x, y\right)`$ becomes $`\left(x, x \oplus y\right)`$ diff --git a/decisional-diffie-hellman.md b/decisional-diffie-hellman.md index 1a108bb..1213644 100644 --- a/decisional-diffie-hellman.md +++ b/decisional-diffie-hellman.md @@ -1,4 +1,4 @@ # Decisional Diffie–Hellman -- decisional version of [[computational-diffie-hellman|Computational Diffie–Hellman]] +- decisional version of [[computational-diffie-hellman]] - given a generator $`g`$ and uniformly selected $`\left(g^a, g^b\right)`$, discriminate $`g^{ab}`$ from a different group value $`c`$ diff --git a/inner-product.md b/inner-product.md new file mode 100644 index 0000000..2346497 --- /dev/null +++ b/inner-product.md @@ -0,0 +1,13 @@ +# Inner Product + +- operates on two vectors and produces a scalar +- notation $`\braket{x|y}`$ + - $`\bra{x}`$ is a [[bra]] + - $`\ket{y}`$ is a [[ket]] +- follows laws + 1. $`\braket{0|y} = 0`$ and $`\braket{x|0} = 0`$ + 2. $`\braket{x + y|z} = \braket{x|z} + \braket{y|z}`$ and $`\braket{x|y + z} = \braket{x|y} + \braket{x|z}`$ + 3. $`\braket{cx|y} = \overline{c}\braket{x|y}`$ and $`\braket{x|cy} = \braket{x|y}c`$ + 4. $`\braket{x|y} = \overline{\braket{y|x}}`$ +- the inner product $`\braket{x|y}`$ is antilinear in $`x`$ and linear in $`y`$ + - if starting with two [[ket]]s, take the conjugate transpose of the former: $`\bra{x} = \overline{\ket{x}}^\intercal = \overline{\ket{x}^\intercal}`$ diff --git a/ket.md b/ket.md index 78c87cf..7d95d98 100644 --- a/ket.md +++ b/ket.md @@ -1,4 +1,4 @@ # Ket - $`\ket{u}`$ where $`u`$ is the _name_ of a _state_ -- [[push]] [[column-vector|Column Vector]] +- [[push]] [[column-vector]] diff --git a/np-complete.md b/np-complete.md index f50f8b6..80dbfa1 100644 --- a/np-complete.md +++ b/np-complete.md @@ -1,4 +1,4 @@ # NP Complete -- a problem that all other [[np|NP]] problems can be reduced to -- if you can solve the decision version in P-time, you can solve all decision problems in [[np|NP]] in P-time +- a problem that all other [[np]] problems can be reduced to +- if you can solve the decision version in P-time, you can solve all decision problems in [[np]] in P-time diff --git a/np-hard.md b/np-hard.md index 43d1337..99112f9 100644 --- a/np-hard.md +++ b/np-hard.md @@ -1,4 +1,4 @@ # NP Hard -- may not necessarily be in [[np|NP]] -- computational version of [[np-complete|NP Complete]] +- may not necessarily be in [[np]] +- computational version of [[np-complete]] diff --git a/np.md b/np.md index 629f365..1c7e59a 100644 --- a/np.md +++ b/np.md @@ -1,5 +1,5 @@ # NP - class of languages whose membership proofs can be verified in polynomial time -- the [[discrete-log|Discrete Log]] problem is an example of an NP problem +- the [[discrete-log]] problem is an example of an NP problem - from $`g^x`$ in a finite field it is hard to compute $`\log_g\left(g^x\right)`$, but easy to check $`g^x = g^y`$ to validate a knowledge proof of $`x`$ diff --git a/quantum-state.md b/quantum-state.md new file mode 100644 index 0000000..1dfd675 --- /dev/null +++ b/quantum-state.md @@ -0,0 +1,4 @@ +# Quantum State + +- [[quantum-computing]] +- unit-norm (length 1) [[ket]] diff --git a/toffoli-gate.md b/toffoli-gate.md index 5bf296f..32f70c5 100644 --- a/toffoli-gate.md +++ b/toffoli-gate.md @@ -1,6 +1,6 @@ # Toffoli Gate -- [[quantum-computing|Quantum Computing]] +- [[quantum-computing]] - also called [[push]] [[CCNOT]] - quantum equivalent of AND/NAND -- [[universal-gate|Universal Gate]] for reversible computing +- [[universal-gate]] for reversible computing