{
	"cells" : 
	[
		{
			"cell_origin" : "client",
			"cell_type" : "latex",
			"cells" : 
			[
				{
					"cell_origin" : "client",
					"cell_type" : "latex_view",
					"source" : "\\algorithm{expand}{Write out products of objects with implicit indices.}\n\nWrite out products of matrices and vectors inside indexbrackets,\ninserting new dummy indices for the contraction. This requires that\nthe objects inside the index bracket are properly declared to\nhave \\prop{Matrix} or \\prop{ImplicitIndex} properties.  \n\nHere is an example with multiple matrices:"
				}
			],
			"hidden" : true,
			"source" : "\\algorithm{expand}{Write out products of objects with implicit indices.}\n\nWrite out products of matrices and vectors inside indexbrackets,\ninserting new dummy indices for the contraction. This requires that\nthe objects inside the index bracket are properly declared to\nhave \\prop{Matrix} or \\prop{ImplicitIndex} properties.  \n\nHere is an example with multiple matrices:"
		},
		{
			"cell_origin" : "client",
			"cell_type" : "input",
			"cells" : 
			[
				{
					"cell_origin" : "server",
					"cell_type" : "latex_view",
					"source" : "\\begin{dmath*}{}\\text{Attached property Indices(position=free) to~}\\left(a, b, c, d, e\\right).\\end{dmath*}"
				},
				{
					"cell_origin" : "server",
					"cell_type" : "latex_view",
					"source" : "\\begin{dmath*}{}\\text{Attached property Matrix to~}\\left(A, B, C, D\\right).\\end{dmath*}"
				},
				{
					"cell_origin" : "server",
					"cell_type" : "latex_view",
					"source" : "\\begin{dmath*}{}\\left(A B C D\\right)\\,_{a b}\\end{dmath*}"
				}
			],
			"source" : "{a,b,c,d,e}::Indices;\n{A,B,C,D}::Matrix;\n\nex:= (A B C D)_{a b};"
		},
		{
			"cell_origin" : "client",
			"cell_type" : "input",
			"cells" : 
			[
				{
					"cell_origin" : "server",
					"cell_type" : "latex_view",
					"source" : "\\begin{dmath*}{}A_{a c} B_{c d} C_{d e} D_{e b}\\end{dmath*}"
				}
			],
			"source" : "expand(_);"
		},
		{
			"cell_origin" : "client",
			"cell_type" : "latex",
			"cells" : 
			[
				{
					"cell_origin" : "client",
					"cell_type" : "latex_view",
					"source" : "Compare the above to the following example, in which one of the\nobjects inside the bracket is no longer a matrix:"
				}
			],
			"hidden" : true,
			"source" : "Compare the above to the following example, in which one of the\nobjects inside the bracket is no longer a matrix:"
		},
		{
			"cell_origin" : "client",
			"cell_type" : "input",
			"cells" : 
			[
				{
					"cell_origin" : "server",
					"cell_type" : "latex_view",
					"source" : "\\begin{dmath*}{}\\left(A B Q D\\right)\\,_{a b}\\end{dmath*}"
				}
			],
			"source" : "ex:= (A B Q D)_{a b};"
		},
		{
			"cell_origin" : "client",
			"cell_type" : "input",
			"cells" : 
			[
				{
					"cell_origin" : "server",
					"cell_type" : "latex_view",
					"source" : "\\begin{dmath*}{}A_{a c} B_{c d} Q D_{d b}\\end{dmath*}"
				}
			],
			"source" : "expand(_);"
		},
		{
			"cell_origin" : "client",
			"cell_type" : "latex",
			"cells" : 
			[
				{
					"cell_origin" : "client",
					"cell_type" : "latex_view",
					"source" : "Finally, an example with matrices carrying additional labels, as well\nas a vector object:"
				}
			],
			"hidden" : true,
			"source" : "Finally, an example with matrices carrying additional labels, as well\nas a vector object:"
		},
		{
			"cell_origin" : "client",
			"cell_type" : "input",
			"cells" : 
			[
				{
					"cell_origin" : "server",
					"cell_type" : "latex_view",
					"source" : "\\begin{dmath*}{}\\text{Attached property Indices(position=free) to~}\\left(\\alpha, \\beta\\right).\\end{dmath*}"
				},
				{
					"cell_origin" : "server",
					"cell_type" : "latex_view",
					"source" : "\\begin{dmath*}{}\\text{Attached property Matrix to~}\\Gamma\\left(\\#\\right).\\end{dmath*}"
				},
				{
					"cell_origin" : "server",
					"cell_type" : "latex_view",
					"source" : "\\begin{dmath*}{}\\text{Attached property ImplicitIndex to~}v.\\end{dmath*}"
				}
			],
			"source" : "{\\alpha,\\beta}::Indices;\n\\Gamma{#}::Matrix;\nv::ImplicitIndex;"
		},
		{
			"cell_origin" : "client",
			"cell_type" : "input",
			"cells" : 
			[
				{
					"cell_origin" : "server",
					"cell_type" : "latex_view",
					"source" : "\\begin{dmath*}{}\\left(\\Gamma_{r} v\\right)\\,_{\\alpha}\\end{dmath*}"
				}
			],
			"source" : "ex:=(\\Gamma_{r} v)_{\\alpha};"
		},
		{
			"cell_origin" : "client",
			"cell_type" : "input",
			"cells" : 
			[
				{
					"cell_origin" : "server",
					"cell_type" : "latex_view",
					"source" : "\\begin{dmath*}{}\\left(\\Gamma_{r}\\right)\\,_{\\alpha \\beta} v_{\\beta}\\end{dmath*}"
				}
			],
			"source" : "expand(_);"
		},
		{
			"cell_origin" : "client",
			"cell_type" : "input",
			"source" : ""
		}
	],
	"description" : "Cadabra JSON notebook format",
	"version" : 1
}
