|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
http://functions.wolfram.com/13.08.02.0001.01
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
JacobiSymbol[n, m] == Product[JacobiSymbol[n, Subscript[p, k]], {k, 1, j}] /;
Element[(m - 1)/2, Integers] && (m - 1)/2 >= 0 &&
FactorInteger[m] == {{Subscript[p, 1], 1}, {Subscript[p, 2], 1},
\[Ellipsis], {Subscript[p, j], 1}} &&
(JacobiSymbol[n, p] == (1 - KroneckerDelta[n/p - Floor[n/p], 0])
(2 Sign[Sum[KroneckerDelta[Mod[j^2, p], Mod[n, p]], {j, 1, p}]] - 1) /;
Element[p, Primes])
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Cell[BoxData[RowBox[List[RowBox[List[RowBox[List["JacobiSymbol", "[", RowBox[List["n", ",", "m"]], "]"]], "\[Equal]", RowBox[List[UnderoverscriptBox["\[Product]", RowBox[List["k", "=", "1"]], "j"], RowBox[List["JacobiSymbol", "[", RowBox[List["n", ",", SubscriptBox["p", "k"]]], "]"]]]]]], "/;", RowBox[List[RowBox[List[FractionBox[RowBox[List["m", "-", "1"]], "2"], "\[Element]", "Integers"]], "\[And]", RowBox[List[FractionBox[RowBox[List["m", "-", "1"]], "2"], "\[GreaterEqual]", "0"]], "\[And]", RowBox[List[RowBox[List["FactorInteger", "[", "m", "]"]], "\[Equal]", RowBox[List["{", RowBox[List[RowBox[List["{", RowBox[List[SubscriptBox["p", "1"], ",", "1"]], "}"]], ",", RowBox[List["{", RowBox[List[SubscriptBox["p", "2"], ",", "1"]], "}"]], ",", "\[Ellipsis]", ",", RowBox[List["{", RowBox[List[SubscriptBox["p", "j"], ",", "1"]], "}"]]]], "}"]]]], "\[And]", RowBox[List["(", RowBox[List[RowBox[List[RowBox[List["JacobiSymbol", "[", RowBox[List["n", ",", "p"]], "]"]], "\[Equal]", RowBox[List[RowBox[List["(", RowBox[List["1", "-", RowBox[List["KroneckerDelta", "[", RowBox[List[RowBox[List[FractionBox["n", "p"], "-", RowBox[List["Floor", "[", FractionBox["n", "p"], "]"]]]], ",", "0"]], "]"]]]], ")"]], " ", RowBox[List["(", RowBox[List[RowBox[List["2", " ", RowBox[List["Sign", "[", RowBox[List[UnderoverscriptBox["\[Sum]", RowBox[List["j", "=", "1"]], "p"], RowBox[List["KroneckerDelta", "[", RowBox[List[RowBox[List["Mod", "[", RowBox[List[SuperscriptBox["j", "2"], ",", "p"]], "]"]], ",", RowBox[List["Mod", "[", RowBox[List["n", ",", "p"]], "]"]]]], "]"]]]], "]"]]]], "-", "1"]], ")"]]]]]], "/;", RowBox[List["p", "\[Element]", "Primes"]]]], ")"]]]]]]]]
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<math xmlns='http://www.w3.org/1998/Math/MathML' mathematica:form='TraditionalForm' xmlns:mathematica='http://www.wolfram.com/XML/'> <semantics> <mrow> <mrow> <semantics> <mrow> <mo> ( </mo> <mfrac> <mi> n </mi> <mi> m </mi> </mfrac> <mo> ) </mo> </mrow> <annotation encoding='Mathematica'> TagBox[RowBox[List["(", FractionBox["n", "m"], ")"]], JacobiSymbol, Rule[Editable, False]] </annotation> </semantics> <mo> ⩵ </mo> <mrow> <munderover> <mo> ∏ </mo> <mrow> <mi> k </mi> <mo> = </mo> <mn> 1 </mn> </mrow> <mi> j </mi> </munderover> <semantics> <mrow> <mo> ( </mo> <mfrac> <mi> n </mi> <msub> <mi> p </mi> <mi> k </mi> </msub> </mfrac> <mo> ) </mo> </mrow> <annotation encoding='Mathematica'> TagBox[RowBox[List["(", FractionBox["n", SubscriptBox["p", "k"]], ")"]], JacobiSymbol, Rule[Editable, False]] </annotation> </semantics> </mrow> </mrow> <mo> /; </mo> <mrow> <mrow> <mfrac> <mrow> <mi> m </mi> <mo> - </mo> <mn> 1 </mn> </mrow> <mn> 2 </mn> </mfrac> <mo> ∈ </mo> <semantics> <mi> ℕ </mi> <annotation encoding='Mathematica'> TagBox["\[DoubleStruckCapitalN]", Function[Integers]] </annotation> </semantics> </mrow> <mo> ∧ </mo> <mrow> <mrow> <mi> factors </mi> <mo> ⁡ </mo> <mo> ( </mo> <mi> m </mi> <mo> ) </mo> </mrow> <mo> ⩵ </mo> <mrow> <mo> { </mo> <mrow> <mrow> <mo> { </mo> <mrow> <msub> <mi> p </mi> <mn> 1 </mn> </msub> <mo> , </mo> <mn> 1 </mn> </mrow> <mo> } </mo> </mrow> <mo> , </mo> <mrow> <mo> { </mo> <mrow> <msub> <mi> p </mi> <mn> 2 </mn> </msub> <mo> , </mo> <mn> 1 </mn> </mrow> <mo> } </mo> </mrow> <mo> , </mo> <mo> … </mo> <mo> , </mo> <mrow> <mo> { </mo> <mrow> <msub> <mi> p </mi> <mi> j </mi> </msub> <mo> , </mo> <mn> 1 </mn> </mrow> <mo> } </mo> </mrow> </mrow> <mo> } </mo> </mrow> </mrow> <mo> ∧ </mo> <mrow> <mo> ( </mo> <mrow> <mrow> <semantics> <mrow> <mo> ( </mo> <mfrac> <mi> n </mi> <mi> p </mi> </mfrac> <mo> ) </mo> </mrow> <annotation encoding='Mathematica'> TagBox[RowBox[List["(", FractionBox["n", "p"], ")"]], JacobiSymbol, Rule[Editable, False]] </annotation> </semantics> <mo> ⩵ </mo> <mrow> <mrow> <mo> ( </mo> <mrow> <mn> 1 </mn> <mo> - </mo> <msub> <semantics> <mi> δ </mi> <annotation-xml encoding='MathML-Content'> <ci> KroneckerDelta </ci> </annotation-xml> </semantics> <mrow> <mrow> <mfrac> <mi> n </mi> <mi> p </mi> </mfrac> <mo> - </mo> <mrow> <mo> ⌊ </mo> <mfrac> <mi> n </mi> <mi> p </mi> </mfrac> <mo> ⌋ </mo> </mrow> </mrow> <mo> , </mo> <mn> 0 </mn> </mrow> </msub> </mrow> <mo> ) </mo> </mrow> <mo> ⁢ </mo> <mrow> <mo> ( </mo> <mrow> <mrow> <mn> 2 </mn> <mo> ⁢ </mo> <mrow> <mi> sgn </mi> <mo> ⁡ </mo> <mo> ( </mo> <mrow> <munderover> <mo> ∑ </mo> <mrow> <mi> j </mi> <mo> = </mo> <mn> 1 </mn> </mrow> <mi> p </mi> </munderover> <msub> <semantics> <mi> δ </mi> <annotation-xml encoding='MathML-Content'> <ci> KroneckerDelta </ci> </annotation-xml> </semantics> <mrow> <semantics> <mrow> <msup> <mi> j </mi> <mn> 2 </mn> </msup> <mo> ⁢ </mo> <mi> mod </mi> <mo> ⁢ </mo> <mi> p </mi> </mrow> <annotation-xml encoding='MathML-Content'> <apply> <rem /> <apply> <power /> <ci> FE`Conversion`Private`j </ci> <cn type='integer'> 2 </cn> </apply> <ci> FE`Conversion`Private`p </ci> </apply> </annotation-xml> </semantics> <mo> , </mo> <semantics> <mrow> <mi> n </mi> <mo> ⁢ </mo> <mi> mod </mi> <mo> ⁢ </mo> <mi> p </mi> </mrow> <annotation-xml encoding='MathML-Content'> <apply> <rem /> <ci> FE`Conversion`Private`n </ci> <ci> FE`Conversion`Private`p </ci> </apply> </annotation-xml> </semantics> </mrow> </msub> </mrow> <mo> ) </mo> </mrow> </mrow> <mo> - </mo> <mn> 1 </mn> </mrow> <mo> ) </mo> </mrow> </mrow> </mrow> <mo> /; </mo> <mrow> <mi> p </mi> <mo> ∈ </mo> <semantics> <mi> ℙ </mi> <annotation encoding='Mathematica'> TagBox["\[DoubleStruckCapitalP]", Function[Primes]] </annotation> </semantics> </mrow> </mrow> <mo> ) </mo> </mrow> </mrow> </mrow> <annotation-xml encoding='MathML-Content'> <apply> <ci> Condition </ci> <apply> <eq /> <apply> <ci> JacobiSymbol </ci> <ci> n </ci> <ci> m </ci> </apply> <apply> <product /> <bvar> <ci> k </ci> </bvar> <lowlimit> <cn type='integer'> 1 </cn> </lowlimit> <uplimit> <ci> j </ci> </uplimit> <apply> <ci> JacobiSymbol </ci> <ci> n </ci> <apply> <ci> Subscript </ci> <ci> p </ci> <ci> k </ci> </apply> </apply> </apply> </apply> <apply> <and /> <apply> <in /> <apply> <times /> <apply> <plus /> <ci> m </ci> <cn type='integer'> -1 </cn> </apply> <apply> <power /> <cn type='integer'> 2 </cn> <cn type='integer'> -1 </cn> </apply> </apply> <integers /> </apply> <apply> <eq /> <apply> <ci> factors </ci> <ci> m </ci> </apply> <list> <list> <apply> <ci> Subscript </ci> <ci> p </ci> <cn type='integer'> 1 </cn> </apply> <cn type='integer'> 1 </cn> </list> <list> <apply> <ci> Subscript </ci> <ci> p </ci> <cn type='integer'> 2 </cn> </apply> <cn type='integer'> 1 </cn> </list> <ci> … </ci> <list> <apply> <ci> Subscript </ci> <ci> p </ci> <ci> j </ci> </apply> <cn type='integer'> 1 </cn> </list> </list> </apply> <apply> <ci> Condition </ci> <apply> <eq /> <apply> <ci> JacobiSymbol </ci> <ci> n </ci> <ci> p </ci> </apply> <apply> <times /> <apply> <plus /> <cn type='integer'> 1 </cn> <apply> <times /> <cn type='integer'> -1 </cn> <apply> <ci> KroneckerDelta </ci> <apply> <plus /> <apply> <times /> <ci> n </ci> <apply> <power /> <ci> p </ci> <cn type='integer'> -1 </cn> </apply> </apply> <apply> <times /> <cn type='integer'> -1 </cn> <apply> <floor /> <apply> <times /> <ci> n </ci> <apply> <power /> <ci> p </ci> <cn type='integer'> -1 </cn> </apply> </apply> </apply> </apply> </apply> <cn type='integer'> 0 </cn> </apply> </apply> </apply> <apply> <plus /> <apply> <times /> <cn type='integer'> 2 </cn> <apply> <ci> Sign </ci> <apply> <sum /> <bvar> <ci> j </ci> </bvar> <lowlimit> <cn type='integer'> 1 </cn> </lowlimit> <uplimit> <ci> p </ci> </uplimit> <apply> <ci> KroneckerDelta </ci> <apply> <rem /> <apply> <power /> <ci> FE`Conversion`Private`j </ci> <cn type='integer'> 2 </cn> </apply> <ci> FE`Conversion`Private`p </ci> </apply> <apply> <rem /> <ci> FE`Conversion`Private`n </ci> <ci> FE`Conversion`Private`p </ci> </apply> </apply> </apply> </apply> </apply> <cn type='integer'> -1 </cn> </apply> </apply> </apply> <apply> <in /> <ci> p </ci> <primes /> </apply> </apply> </apply> </apply> </annotation-xml> </semantics> </math>
|
|
|
|
|
|
|
|
|
|
| |
|
|
|
|
| Cell[BoxData[RowBox[List[RowBox[List["HoldPattern", "[", RowBox[List["JacobiSymbol", "[", RowBox[List["n_", ",", "m_"]], "]"]], "]"]], "\[RuleDelayed]", RowBox[List[RowBox[List[UnderoverscriptBox["\[Product]", RowBox[List["k", "=", "1"]], "j"], RowBox[List["JacobiSymbol", "[", RowBox[List["n", ",", SubscriptBox["p", "k"]]], "]"]]]], "/;", RowBox[List[RowBox[List[FractionBox[RowBox[List["m", "-", "1"]], "2"], "\[Element]", "Integers"]], "&&", RowBox[List[FractionBox[RowBox[List["m", "-", "1"]], "2"], "\[GreaterEqual]", "0"]], "&&", RowBox[List[RowBox[List["FactorInteger", "[", "m", "]"]], "\[Equal]", RowBox[List["{", RowBox[List[RowBox[List["{", RowBox[List[SubscriptBox["p", "1"], ",", "1"]], "}"]], ",", RowBox[List["{", RowBox[List[SubscriptBox["p", "2"], ",", "1"]], "}"]], ",", "\[Ellipsis]", ",", RowBox[List["{", RowBox[List[SubscriptBox["p", "j"], ",", "1"]], "}"]]]], "}"]]]], "&&", RowBox[List["(", RowBox[List[RowBox[List[RowBox[List["JacobiSymbol", "[", RowBox[List["n", ",", "p"]], "]"]], "\[Equal]", RowBox[List[RowBox[List["(", RowBox[List["1", "-", RowBox[List["KroneckerDelta", "[", RowBox[List[RowBox[List[FractionBox["n", "p"], "-", RowBox[List["Floor", "[", FractionBox["n", "p"], "]"]]]], ",", "0"]], "]"]]]], ")"]], " ", RowBox[List["(", RowBox[List[RowBox[List["2", " ", RowBox[List["Sign", "[", RowBox[List[UnderoverscriptBox["\[Sum]", RowBox[List["j", "=", "1"]], "p"], RowBox[List["KroneckerDelta", "[", RowBox[List[RowBox[List["Mod", "[", RowBox[List[SuperscriptBox["j", "2"], ",", "p"]], "]"]], ",", RowBox[List["Mod", "[", RowBox[List["n", ",", "p"]], "]"]]]], "]"]]]], "]"]]]], "-", "1"]], ")"]]]]]], "/;", RowBox[List["p", "\[Element]", "Primes"]]]], ")"]]]]]]]]]] |
|
|
|
|
|
|
|
|
|
|
Date Added to functions.wolfram.com (modification date)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|