# isOrthogonal -- whether a matrix is orthogonal

## Synopsis

• Usage:
isOrthogonal A
• Inputs:
• A, ,
• Optional inputs:
• Tolerance => ..., default value .000001
• Outputs:
• , whether $A$ is orthogonal

## Description

This method determines whether a given matrix is orthogonal, i.e., has inverse equal to its transpose.

When working over an InexactFieldFamily like RR or CC, the option Tolerance can be used to specify the internal threshold for checking equality (any floating point number below the tolerance is treated as numerically zero). If the given matrix does not have floating point entries, then this option is not used.

 i1 : O1 = randomOrthogonal 5 o1 = | .442386 -.0306554 .751799 -.317548 .370563 | | .133864 .768167 -.0944111 -.513838 -.345046 | | -.60855 -.385718 .234815 -.587034 -.284854 | | -.42001 .39448 .591227 .519553 -.220209 | | -.489525 .323399 -.145593 -.143489 .783576 | 5 5 o1 : Matrix RR <--- RR 53 53 i2 : isOrthogonal O1 o2 = true i3 : O2 = randomOrthogonal(5, QQ) o3 = | -22142569999/27593776175 90555408/788393605 -5532008344/27593776175 | 193172688/788393605 145827307/157678721 24042978/788393605 | 591854008/5518755235 -5780466/157678721 -5151709442/5518755235 | -598559432/27593776175 -200993706/788393605 7495643483/27593776175 | -84039992/157678721 40244400/157678721 18443792/157678721 ------------------------------------------------------------------------ -5025793592/27593776175 2046480376/3941968025 | -216954846/788393605 70436016/788393605 | -1194249041/5518755235 -206975072/788393605 | -25053509506/27593776175 -751964432/3941968025 | 22251808/157678721 -123874657/157678721 | 5 5 o3 : Matrix QQ <--- QQ i4 : isOrthogonal O2 o4 = true