Skip to content
geeksforgeeks
  • Tutorials
    • Python
    • Java
    • Data Structures & Algorithms
    • ML & Data Science
    • Interview Corner
    • Programming Languages
    • Web Development
    • CS Subjects
    • DevOps And Linux
    • School Learning
    • Practice Coding Problems
  • Courses
    • DSA to Development
    • Get IBM Certification
    • Newly Launched!
      • Master Django Framework
      • Become AWS Certified
    • For Working Professionals
      • Interview 101: DSA & System Design
      • Data Science Training Program
      • JAVA Backend Development (Live)
      • DevOps Engineering (LIVE)
      • Data Structures & Algorithms in Python
    • For Students
      • Placement Preparation Course
      • Data Science (Live)
      • Data Structure & Algorithm-Self Paced (C++/JAVA)
      • Master Competitive Programming (Live)
      • Full Stack Development with React & Node JS (Live)
    • Full Stack Development
    • Data Science Program
    • All Courses
  • DSA Tutorial
  • Data Structures
  • Algorithms
  • Array
  • Strings
  • Linked List
  • Stack
  • Queue
  • Tree
  • Graph
  • Searching
  • Sorting
  • Recursion
  • Dynamic Programming
  • Binary Tree
  • Binary Search Tree
  • Heap
  • Hashing
  • Divide & Conquer
  • Mathematical
  • Geometric
  • Bitwise
  • Greedy
  • Backtracking
  • Branch and Bound
  • Matrix
  • Pattern Searching
  • Randomized
Open In App
Next Article:
Mathematics | Sequence, Series and Summations
Next article icon

Finding Inverse of a Square Matrix using Cayley Hamilton Theorem in MATLAB

Last Updated : 14 Aug, 2024
Comments
Improve
Suggest changes
Like Article
Like
Report

Matrix is the set of numbers arranged in rows & columns in order to form a Rectangular array. Here, those numbers are called the entries or elements of that matrix. A Rectangular array of (m*n) numbers in the form of 'm' horizontal lines (rows) & 'n' vertical lines (called columns), is called a matrix of order m by n, which is written as m × n matrix.

Note: If m=n i.e., Number of Rows = Number of Columns in a Matrix 'A', then 'A' is said to be a Square Matrix of order 'n'.

The inverse of a Square Matrix:

If 'A' is a non-singular (|A| ≠ 0) square matrix of order 'n', then there exists an n x n matrix A-1, which is called the inverse matrix of 'A', which satisfies the following property:

AA-1 = A-1A = In, where In is  the Identity matrix of order n

We can Find Inverse of a Square Matrix using various methods like:

  • Cayley-Hamilton Method
  • Gaussian Elimination
  • Newton’s Method
  • Eigen Decomposition Method

Cayley-Hamilton’s theorem:

In the Domain of Linear Algebra, According to Cayley-Hamilton’s theorem, every square matrix 'A' of order 'n' satisfies its own characteristic equation, which is given by:

|A-λIn| = 0 
Here 'In' is the Identity Matrix
of Order 'n' (same as that of A's Order)
and 'λ' is some Real Constant.

Expanding the above characteristic equation of 'A', we get:

λn + C1λn-1 + C2λn-2 + . . . + CnIn = 0, 
where C1, C2, . . . , Cn are Real Constants.

According to Cayley-Hamilton’s theorem, The above characteristic equation of 'A' is satisfied by itself, Hence we have:

An + C1An-1 + C2An-2 + . . . + CnIn = 0 , 
where C1, C2, . . . , Cn are Real Constants.

Steps to Find Inverse of a Square Matrix using Cayley Hamilton theorem:

Step 1: For a Given Non-singular Square Matrix 'A' of order 'n', Find its Characteristic equation |A-λIn| = 0.

Expand the Determinant such that it is reduced in the below format: 

λn + C1λn-1 + C2λn-2 + . . . + CnIn = 0,
where C1, C2, . . . , Cn are Real Constants.

Step 2: As per Cayley-Hamilton’s theorem, the above Characteristic equation of 'A' is satisfied by itself, Hence:

An + C1An-1 + C2An-2 + . . . + CnIn = 0

Step 3: Multiplying by A-1 on Both Sides of the above Equation reduces it to:

An-1 + C1An-2 + C2An-3 + . . . Cn-1In + CnA-1 = 0

Step 4: Find A-1 by simplifying and reordering the terms of the above equation, then A-1 is:

A-1 = (-1/Cn)[ An-1 + C1An-2 + C2An-3 + . . . Cn-1In ]

MATLAB Functions used in the Below Code are:

  • disp("txt"): This Method displays the message-'txt' to the User.
  • input("txt"): This Method displays the message-'txt' and waits for the user to input a value and press the Return key.
  • poly(A): This method returns the n+1 coefficients of the Characteristic polynomial of the matrix 'A' of order 'n'.
  • length(X): This method returns the number of elements of the vector 'X'.
  • round(x): This Method rounds 'x' to its nearest integer.

Example:

Matlab
% MATLAB Implementation to find Inverse  % of a Square Matrix using Cayley Hamilton theorem: clear all   clc         disp("Finding Inverse of a Square Matrix  using Cayley  Hamilton theorem in MATLAB | GeeksforGeeks") A=input('Enter the Matrix A: ');  % To find Coefficients of Characteristic Equation of Matrix 'A' cf=poly(A);    % To find the Number of Coefficients in  % the Characteristic Equation of Matrix 'A' n=length(cf);   % To find the Inverse of A inverse = cf(1)*A^(n-2); for i=2:n-1 inverse=inverse+cf(i)*A^(n-i-1); end  % Checking whether |A|=0 or not if  round(cf(n))==0        disp('Inverse of A does not exist as it is a singular matrix..') else     inverse=inverse/(-cf(n));    disp('Inverse of A: ')    disp(inverse) end 

Output:

Input matrix:

A = \begin{bmatrix} -5 &  4&  2\\ 4& -5&  2\\ 2 &  2&  -8\\ \end{bmatrix}

 

Input matrix:

A = \begin{bmatrix} 1 &  2&  3\\ 4&  -55&  6\\ -9&  0&  4\\ \end{bmatrix}

 

Input matrix:

A = \begin{bmatrix} 1 &  2&  3& 4\\ 5&  -9&  0& 8\\ 3&  4&  5& 6\\ 33& 0& -9& -6\\ \end{bmatrix}


Next Article
Mathematics | Sequence, Series and Summations

K

kothavvsaakash
Improve
Article Tags :
  • MATLAB
  • Geeks Premier League
  • DSA
  • MATLAB Matrix-Programs

Similar Reads

    Engineering Mathematics Tutorials
    Engineering mathematics is a vital component of the engineering discipline, offering the analytical tools and techniques necessary for solving complex problems across various fields. Whether you're designing a bridge, optimizing a manufacturing process, or developing algorithms for computer systems,
    3 min read

    Linear Algebra

    Matrices
    Matrices are key concepts in mathematics, widely used in solving equations and problems in fields like physics and computer science. A matrix is simply a grid of numbers, and a determinant is a value calculated from a square matrix.Example: \begin{bmatrix} 6 & 9 \\ 5 & -4 \\ \end{bmatrix}_{2
    3 min read
    Row Echelon Form
    Row Echelon Form (REF) of a matrix simplifies solving systems of linear equations, understanding linear transformations, and working with matrix equations. A matrix is in Row Echelon form if it has the following properties:Zero Rows at the Bottom: If there are any rows that are completely filled wit
    4 min read
    Eigenvalues and Eigenvectors
    Eigenvectors are the directions that remain unchanged during a transformation, even if they get longer or shorter. Eigenvalues are the numbers that indicate how much something stretches or shrinks during that transformation. These ideas are important in many areas of math and engineering, including
    15+ min read
    System of Linear Equations
    In mathematics, a system of linear equations consists of two or more linear equations that share the same variables. These systems often arise in real-world applications, such as engineering, physics, economics, and more, where relationships between variables need to be analyzed. Understanding how t
    8 min read
    Matrix Diagonalization
    Matrix diagonalization is the process of reducing a square matrix into its diagonal form using a similarity transformation. This process is useful because diagonal matrices are easier to work with, especially when raising them to integer powers.Not all matrices are diagonalizable. A matrix is diagon
    8 min read
    LU Decomposition
    LU decomposition or factorization of a matrix is the factorization of a given square matrix into two triangular matrices, one upper triangular matrix and one lower triangular matrix, such that the product of these two matrices gives the original matrix. It was introduced by Alan Turing in 1948, who
    7 min read
    Finding Inverse of a Square Matrix using Cayley Hamilton Theorem in MATLAB
    Matrix is the set of numbers arranged in rows & columns in order to form a Rectangular array. Here, those numbers are called the entries or elements of that matrix. A Rectangular array of (m*n) numbers in the form of 'm' horizontal lines (rows) & 'n' vertical lines (called columns), is calle
    4 min read

    Sequence & Series

    Mathematics | Sequence, Series and Summations
    Sequences, series, and summations are fundamental concepts of mathematical analysis and it has practical applications in science, engineering, and finance.Table of ContentWhat is Sequence?Theorems on SequencesProperties of SequencesWhat is Series?Properties of SeriesTheorems on SeriesSummation Defin
    8 min read
    Binomial Theorem
    Binomial theorem is a fundamental principle in algebra that describes the algebraic expansion of powers of a binomial. According to this theorem, the expression (a + b)n where a and b are any numbers and n is a non-negative integer. It can be expanded into the sum of terms involving powers of a and
    15+ min read
    Finding nth term of any Polynomial Sequence
    Given a few terms of a sequence, we are often asked to find the expression for the nth term of this sequence. While there is a multitude of ways to do this, In this article, we discuss an algorithmic approach which will give the correct answer for any polynomial expression. Note that this method fai
    4 min read

    Calculus

    Limits, Continuity and Differentiability
    Limits, Continuity, and Differentiation are fundamental concepts in calculus. They are essential for analyzing and understanding function behavior and are crucial for solving real-world problems in physics, engineering, and economics.Table of ContentLimitsKey Characteristics of LimitsExample of Limi
    10 min read
    Cauchy's Mean Value Theorem
    Cauchy's Mean Value theorem provides a relation between the change of two functions over a fixed interval with their derivative. It is a special case of Lagrange Mean Value Theorem. Cauchy's Mean Value theorem is also called the Extended Mean Value Theorem or the Second Mean Value Theorem.According
    7 min read
    Taylor Series
    A Taylor series represents a function as an infinite sum of terms, calculated from the values of its derivatives at a single point.Taylor series is a powerful mathematical tool used to approximate complex functions with an infinite sum of terms derived from the function's derivatives at a single poi
    8 min read
    Inverse functions and composition of functions
    Inverse Functions - In mathematics a function, a, is said to be an inverse of another, b, if given the output of b a returns the input value given to b. Additionally, this must hold true for every element in the domain co-domain(range) of b. In other words, assuming x and y are constants, if b(x) =
    3 min read
    Definite Integral | Definition, Formula & How to Calculate
    A definite integral is an integral that calculates a fixed value for the area under a curve between two specified limits. The resulting value represents the sum of all infinitesimal quantities within these boundaries. i.e. if we integrate any function within a fixed interval it is called a Definite
    8 min read
    Application of Derivative - Maxima and Minima
    Derivatives have many applications, like finding rate of change, approximation, maxima/minima and tangent. In this section, we focus on their use in finding maxima and minima.Note: If f(x) is a continuous function, then for every continuous function on a closed interval has a maximum and a minimum v
    6 min read

    Probability & Statistics

    Mean, Variance and Standard Deviation
    Mean, Variance and Standard Deviation are fundamental concepts in statistics and engineering mathematics, essential for analyzing and interpreting data. These measures provide insights into data's central tendency, dispersion, and spread, which are crucial for making informed decisions in various en
    10 min read
    Conditional Probability
    Conditional probability defines the probability of an event occurring based on a given condition or prior knowledge of another event. Conditional probability is the likelihood of an event occurring, given that another event has already occurred. In probability, this is denoted as A given B, expresse
    12 min read
    Bayes' Theorem
    Bayes' Theorem is a mathematical formula that helps determine the conditional probability of an event based on prior knowledge and new evidence.It adjusts probabilities when new information comes in and helps make better decisions in uncertain situations.Bayes' Theorem helps us update probabilities
    12 min read
    Probability Distribution - Function, Formula, Table
    A probability distribution is a mathematical function or rule that describes how the probabilities of different outcomes are assigned to the possible values of a random variable. It provides a way of modeling the likelihood of each outcome in a random experiment.While a frequency distribution shows
    15+ min read
    Covariance and Correlation
    Covariance and correlation are the two key concepts in Statistics that help us analyze the relationship between two variables. Covariance measures how two variables change together, indicating whether they move in the same or opposite directions. Relationship between Independent and dependent variab
    5 min read

    Practice Questions

    Last Minute Notes - Engineering Mathematics
    GATE CSE is a national-level engineering entrance exam in India specifically for Computer Science and Engineering. It's conducted by top Indian institutions like IISc Bangalore and various IITs. In GATE CSE, engineering mathematics is a significant portion of the exam, typically constituting 15% of
    15+ min read
    Engineering Mathematics - GATE CSE Previous Year Questions
    Solving GATE Previous Year's Questions (PYQs) not only clears the concepts but also helps to gain flexibility, speed, accuracy, and understanding of the level of questions generally asked in the GATE exam, and that eventually helps you to gain good marks in the examination. Previous Year Questions h
    4 min read
geeksforgeeks-footer-logo
Corporate & Communications Address:
A-143, 7th Floor, Sovereign Corporate Tower, Sector- 136, Noida, Uttar Pradesh (201305)
Registered Address:
K 061, Tower K, Gulshan Vivante Apartment, Sector 137, Noida, Gautam Buddh Nagar, Uttar Pradesh, 201305
GFG App on Play Store GFG App on App Store
Advertise with us
  • Company
  • About Us
  • Legal
  • Privacy Policy
  • In Media
  • Contact Us
  • Advertise with us
  • GFG Corporate Solution
  • Placement Training Program
  • Languages
  • Python
  • Java
  • C++
  • PHP
  • GoLang
  • SQL
  • R Language
  • Android Tutorial
  • Tutorials Archive
  • DSA
  • Data Structures
  • Algorithms
  • DSA for Beginners
  • Basic DSA Problems
  • DSA Roadmap
  • Top 100 DSA Interview Problems
  • DSA Roadmap by Sandeep Jain
  • All Cheat Sheets
  • Data Science & ML
  • Data Science With Python
  • Data Science For Beginner
  • Machine Learning
  • ML Maths
  • Data Visualisation
  • Pandas
  • NumPy
  • NLP
  • Deep Learning
  • Web Technologies
  • HTML
  • CSS
  • JavaScript
  • TypeScript
  • ReactJS
  • NextJS
  • Bootstrap
  • Web Design
  • Python Tutorial
  • Python Programming Examples
  • Python Projects
  • Python Tkinter
  • Python Web Scraping
  • OpenCV Tutorial
  • Python Interview Question
  • Django
  • Computer Science
  • Operating Systems
  • Computer Network
  • Database Management System
  • Software Engineering
  • Digital Logic Design
  • Engineering Maths
  • Software Development
  • Software Testing
  • DevOps
  • Git
  • Linux
  • AWS
  • Docker
  • Kubernetes
  • Azure
  • GCP
  • DevOps Roadmap
  • System Design
  • High Level Design
  • Low Level Design
  • UML Diagrams
  • Interview Guide
  • Design Patterns
  • OOAD
  • System Design Bootcamp
  • Interview Questions
  • Inteview Preparation
  • Competitive Programming
  • Top DS or Algo for CP
  • Company-Wise Recruitment Process
  • Company-Wise Preparation
  • Aptitude Preparation
  • Puzzles
  • School Subjects
  • Mathematics
  • Physics
  • Chemistry
  • Biology
  • Social Science
  • English Grammar
  • Commerce
  • World GK
  • GeeksforGeeks Videos
  • DSA
  • Python
  • Java
  • C++
  • Web Development
  • Data Science
  • CS Subjects
@GeeksforGeeks, Sanchhaya Education Private Limited, All rights reserved
We use cookies to ensure you have the best browsing experience on our website. By using our site, you acknowledge that you have read and understood our Cookie Policy & Privacy Policy
Lightbox
Improvement
Suggest Changes
Help us improve. Share your suggestions to enhance the article. Contribute your expertise and make a difference in the GeeksforGeeks portal.
geeksforgeeks-suggest-icon
Create Improvement
Enhance the article with your expertise. Contribute to the GeeksforGeeks community and help create better learning resources for all.
geeksforgeeks-improvement-icon
Suggest Changes
min 4 words, max Words Limit:1000

Thank You!

Your suggestions are valuable to us.

What kind of Experience do you want to share?

Interview Experiences
Admission Experiences
Career Journeys
Work Experiences
Campus Experiences
Competitive Exam Experiences