
{
	"cells" : 
	[
		
		{
			"cell_origin" : "client",
			"cell_type" : "latex",
			"cells" : 
			[
				
				{
					"cell_origin" : "client",
					"cell_type" : "latex_view",
					"source" : "\\algorithm{young_project_tensor}{Project tensors with their Young projector.}\n\nProject tensors with their Young projection operator. This works for\nsimple symmetric or anti-symmetric objects, as in\n"
				}
			],
			"hidden" : true,
			"source" : "\\algorithm{young_project_tensor}{Project tensors with their Young projector.}\n\nProject tensors with their Young projection operator. This works for\nsimple symmetric or anti-symmetric objects, as in\n"
		},
		
		{
			"cell_origin" : "client",
			"cell_type" : "input",
			"cells" : 
			[
				
				{
					"cell_origin" : "server",
					"cell_type" : "latex_view",
					"source" : "\\begin{dmath*}{}A_{m n} A_{m p}\\end{dmath*}"
				}
			],
			"source" : "A_{m n}::Symmetric.\nex:= A_{m n} A_{m p};"
		},
		
		{
			"cell_origin" : "client",
			"cell_type" : "input",
			"cells" : 
			[
				
				{
					"cell_origin" : "server",
					"cell_type" : "latex_view",
					"source" : "\\begin{dmath*}{}\\left(\\frac{1}{2}A_{m n}+\\frac{1}{2}A_{n m}\\right) \\left(\\frac{1}{2}A_{m p}+\\frac{1}{2}A_{p m}\\right)\\end{dmath*}"
				}
			],
			"source" : "young_project_tensor(_);"
		},
		
		{
			"cell_origin" : "client",
			"cell_type" : "latex",
			"cells" : 
			[
				
				{
					"cell_origin" : "client",
					"cell_type" : "latex_view",
					"source" : "but more generically works for any tensor which has\na \\prop{TableauSymmetry} property attached to it. "
				}
			],
			"hidden" : true,
			"source" : "but more generically works for any tensor which has\na \\prop{TableauSymmetry} property attached to it. "
		},
		
		{
			"cell_origin" : "client",
			"cell_type" : "input",
			"cells" : 
			[
				
				{
					"cell_origin" : "server",
					"cell_type" : "latex_view",
					"source" : "\\begin{dmath*}{}A_{m n p}\\end{dmath*}"
				}
			],
			"source" : "A_{m n p}::TableauSymmetry(shape={2,1}, indices={0,2,1}).\nex:= A_{m n p};"
		},
		
		{
			"cell_origin" : "client",
			"cell_type" : "input",
			"cells" : 
			[
				
				{
					"cell_origin" : "server",
					"cell_type" : "latex_view",
					"source" : "\\begin{dmath*}{}\\frac{1}{3}A_{m n p}+\\frac{1}{3}A_{p n m} - \\frac{1}{3}A_{n m p} - \\frac{1}{3}A_{p m n}\\end{dmath*}"
				}
			],
			"source" : "young_project_tensor(_);"
		},
		
		{
			"cell_origin" : "client",
			"cell_type" : "latex",
			"cells" : 
			[
				
				{
					"cell_origin" : "client",
					"cell_type" : "latex_view",
					"source" : "When the parameters \\verb|modulo_monoterm| is set to \\verb|True|, the resulting\nexpression will be simplified using the monoterm symmetries of the\ntensor,"
				}
			],
			"hidden" : true,
			"source" : "When the parameters \\verb|modulo_monoterm| is set to \\verb|True|, the resulting\nexpression will be simplified using the monoterm symmetries of the\ntensor,"
		},
		
		{
			"cell_origin" : "client",
			"cell_type" : "input",
			"cells" : 
			[
				
				{
					"cell_origin" : "server",
					"cell_type" : "latex_view",
					"source" : "\\begin{dmath*}{}A_{m n p}\\end{dmath*}"
				}
			],
			"source" : "A_{m n p}::TableauSymmetry(shape={2,1}, indices={0,2,1}).\nex:= A_{m n p};"
		},
		
		{
			"cell_origin" : "client",
			"cell_type" : "input",
			"cells" : 
			[
				
				{
					"cell_origin" : "server",
					"cell_type" : "latex_view",
					"source" : "\\begin{dmath*}{}\\frac{2}{3}A_{m n p} - \\frac{1}{3}A_{n p m}+\\frac{1}{3}A_{m p n}\\end{dmath*}"
				}
			],
			"source" : "young_project_tensor(_, modulo_monoterm=True);"
		},
		
		{
			"cell_origin" : "client",
			"cell_type" : "latex",
			"cells" : 
			[
				
				{
					"cell_origin" : "client",
					"cell_type" : "latex_view",
					"source" : "(in this example, the tensor is anti-symmetric in the indices~0 and 1,\nhence the simplification compared to the previous example)."
				}
			],
			"hidden" : true,
			"source" : "(in this example, the tensor is anti-symmetric in the indices~0 and 1,\nhence the simplification compared to the previous example)."
		},
		
		{
			"cell_origin" : "client",
			"cell_type" : "input",
			"source" : ""
		}
	],
	"description" : "Cadabra JSON notebook format",
	"version" : 1.0
}

