Wolfram Researchfunctions.wolfram.comOther Wolfram Sites
Search Site
Function CategoriesGraphics GalleryNotationsGeneral IdentitiesAbout This Site ContributeEmail CommentsSign the Guestbook

View Related Information In
The Documentation Center
MathWorld

Download All Formulas For This Function
Mathematica Notebook
PDF File

 

Developed with Mathematica -- Download a Free Trial Version
 











JacobiSymbol






Mathematica Notation

Traditional Notation









Number Theory Functions > JacobiSymbol[n,m] > Primary definition





http://functions.wolfram.com/13.08.02.0001.01









  


  










Input Form





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])










Standard Form





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"]]]], ")"]]]]]]]]










MathML Form







<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[&quot;(&quot;, FractionBox[&quot;n&quot;, &quot;m&quot;], &quot;)&quot;]], JacobiSymbol, Rule[Editable, False]] </annotation> </semantics> <mo> &#10869; </mo> <mrow> <munderover> <mo> &#8719; </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[&quot;(&quot;, FractionBox[&quot;n&quot;, SubscriptBox[&quot;p&quot;, &quot;k&quot;]], &quot;)&quot;]], 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> &#8712; </mo> <semantics> <mi> &#8469; </mi> <annotation encoding='Mathematica'> TagBox[&quot;\[DoubleStruckCapitalN]&quot;, Function[Integers]] </annotation> </semantics> </mrow> <mo> &#8743; </mo> <mrow> <mrow> <mi> factors </mi> <mo> &#8289; </mo> <mo> ( </mo> <mi> m </mi> <mo> ) </mo> </mrow> <mo> &#10869; </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> &#8230; </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> &#8743; </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[&quot;(&quot;, FractionBox[&quot;n&quot;, &quot;p&quot;], &quot;)&quot;]], JacobiSymbol, Rule[Editable, False]] </annotation> </semantics> <mo> &#10869; </mo> <mrow> <mrow> <mo> ( </mo> <mrow> <mn> 1 </mn> <mo> - </mo> <msub> <semantics> <mi> &#948; </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> &#8970; </mo> <mfrac> <mi> n </mi> <mi> p </mi> </mfrac> <mo> &#8971; </mo> </mrow> </mrow> <mo> , </mo> <mn> 0 </mn> </mrow> </msub> </mrow> <mo> ) </mo> </mrow> <mo> &#8290; </mo> <mrow> <mo> ( </mo> <mrow> <mrow> <mn> 2 </mn> <mo> &#8290; </mo> <mrow> <mi> sgn </mi> <mo> &#8289; </mo> <mo> ( </mo> <mrow> <munderover> <mo> &#8721; </mo> <mrow> <mi> j </mi> <mo> = </mo> <mn> 1 </mn> </mrow> <mi> p </mi> </munderover> <msub> <semantics> <mi> &#948; </mi> <annotation-xml encoding='MathML-Content'> <ci> KroneckerDelta </ci> </annotation-xml> </semantics> <mrow> <semantics> <mrow> <msup> <mi> j </mi> <mn> 2 </mn> </msup> <mo> &#8290; </mo> <mi> mod </mi> <mo> &#8290; </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> &#8290; </mo> <mi> mod </mi> <mo> &#8290; </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> &#8712; </mo> <semantics> <mi> &#8473; </mi> <annotation encoding='Mathematica'> TagBox[&quot;\[DoubleStruckCapitalP]&quot;, 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> &#8230; </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>










Rule Form





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)





2001-10-29





© 1998-2014 Wolfram Research, Inc.