Use of Submatrices If the original matrix is n x n, the four submatrices are n/2 x n/2 each; for simplicity we assume powers of two To find the result.

Slides:



Advertisements
Similar presentations
Divide-and-Conquer CIS 606 Spring 2010.
Advertisements

Section 13-4: Matrix Multiplication
A simple example finding the maximum of a set S of n numbers.
Strassen's Matrix Multiplication Sibel KIRMIZIGÜL.
Lecture 10 Jianjun Hu Department of Computer Science and Engineering University of South Carolina CSCE350 Algorithms and Data Structure.
Foundations of Algorithms, Fourth Edition
Parallel Programming: Techniques and Applications Using Networked Workstations and Parallel Computers Chapter 11: Numerical Algorithms Sec 11.2: Implementing.
Algorithm Design Strategy Divide and Conquer. More examples of Divide and Conquer  Review of Divide & Conquer Concept  More examples  Finding closest.
CS Section 600 CS Section 002 Dr. Angela Guercio Spring 2010.
1 Fast Sparse Matrix Multiplication Raphael Yuster Haifa University (Oranim) Uri Zwick Tel Aviv University ESA 2004.
Design and Analysis of Algorithms - Chapter 41 Divide and Conquer The most well known algorithm design strategy: 1. Divide instance of problem into two.
Design and Analysis of Algorithms - Chapter 41 Divide and Conquer The most well known algorithm design strategy: 1. Divide instance of problem into two.
Table of Contents Matrices - Multiplication Assume that matrix A is of order m  n and matrix B is of order p  q. To determine whether or not A can be.
Matrix Equations Step 1: Write the system as a matrix equation. A three-equation system is shown below.
Divide-and-Conquer 7 2  9 4   2   4   7
AN INTRODUCTION TO ELEMENTARY ROW OPERATIONS Tools to Solve Matrices.
Computer Graphics World, View and Projection Matrices CO2409 Computer Graphics Week 8.
MA/CSSE 473 Day 17 Divide-and-conquer Convex Hull Strassen's Algorithm: Matrix Multiplication.
4.Divide-and-Conquer Hsu, Lih-Hsing. Computer Theory Lab. Chapter 4P.2 Instruction Divide Conquer Combine.
Numerical Algorithms Quiz questions ITCS4145/5145, Parallel Programming March 14, 2013.
Four Big Buckets Bullet point one Bullet point two Bullet point three Bullet point one Bullet point two Bullet point three Bullet point one Bullet point.
8.2 Operations With Matrices
Divide and Conquer Andreas Klappenecker [based on slides by Prof. Welch]
 In this lesson we will go over how to solve a basic matrix equation such as the following: These are matrices, not variables.
EXAMPLE 1 Add and subtract matrices
1 How to Multiply Slides by Kevin Wayne. Copyright © 2005 Pearson-Addison Wesley. All rights reserved. integers, matrices, and polynomials.
Young CS 331 D&A of Algo. Topic: Divide and Conquer1 Divide-and-Conquer General idea: Divide a problem into subprograms of the same kind; solve subprograms.
Divide and Conquer Faculty Name: Ruhi Fatima Topics Covered Divide and Conquer Matrix multiplication Recurrence.
3.6 Multiplying Matrices Homework 3-17odd and odd.
Warm Up Multiply the matrices. 1. Find the determinant. 2. –1 Welcome! I’m so glad you’re here! Please get your Calculator. Please get started on this.
CSE 421 Algorithms Richard Anderson Lecture 13 Recurrences, Part 2.
Notes Over 4.2 Finding the Product of Two Matrices Find the product. If it is not defined, state the reason. To multiply matrices, the number of columns.
4-3 Matrix Multiplication Objective: To multiply a matrix by a scalar multiple.
13.3 Product of a Scalar and a Matrix.  In matrix algebra, a real number is often called a.  To multiply a matrix by a scalar, you multiply each entry.
Test1 Here some text. Text 2 More text.
Numerical Algorithms Chapter 11.
Lesson 43: Working with Matrices: Multiplication
12-1 Organizing Data Using Matrices
MA/CSSE 473 Day 17 Divide-and-conquer Convex Hull
Advanced Design and Analysis Techniques
Determinants Section The focus before was to determine information about the solution set of the linear system of equations given as the matrix equation.
CSCE 411 Design and Analysis of Algorithms
Section 6.4 Multiplicative Inverses of Matices and Matrix Equations
[ ] [ ] [ ] [ ] EXAMPLE 3 Scalar multiplication Simplify the product:
Solving Linear Systems Using Inverse Matrices
Richard Anderson Lecture 13 Recurrences and Divide and Conquer
[type text here] [type text here] [type text here] [type text here]
Topic: Divide and Conquer
Your text here Your text here Your text here Your text here Your text here Pooky.Pandas.
Richard Anderson Lecture 12 Recurrences and Divide and Conquer
Richard Anderson Lecture 13 Recurrences, Part 2
Your text here Your text here Your text here Your text here
Section 9.4 Multiplicative Inverses of Matices and Matrix Equations
ICS 353: Design and Analysis of Algorithms
Fast Sparse Matrix Multiplication
[type text here] [type text here] [type text here] [type text here]
3.6 Multiply Matrices.
Determinant of amatrix:
Topic: Divide and Conquer
Gattegno Tens Charts Term 1 Mathematics.
What is the dimension of the matrix below?
ICS 353: Design and Analysis of Algorithms
Richard Anderson Lecture 13, Winter 2019 Recurrences, Part 2
Using Matrices to Perform Geometric Transformations
Matrix Multiplication
Divide-and-Conquer 7 2  9 4   2   4   7
40% CIRCLE INFOGRAPHIC 50% 25% 15% 5%
Matrix Multiplication Sec. 4.2
Presentation transcript:

Use of Submatrices If the original matrix is n x n, the four submatrices are n/2 x n/2 each; for simplicity we assume powers of two To find the result takes 8 multiplications and 4 additions; the complexity is (n3)

An Example a b e g c d f h We will only demo one level of recursion and multiply 2 x 2 matrices directly r = a e + b f

Example - continued s = a g + b h So the final result is t = c e + d f u = c g + d h

Strassen’s Method The method just shown has the recurrence For large n (in practice, n > 45) the greater number of additions, O(n2), is compensated for by one less multiplication, O(n3)

Overview of the Method This technique is not intuitive and the text develops some of the thought process that might have occurred, we only present the results here

Some Details

An Example a b e g c d f h We will only demo one level of recursion and multiply 2 x 2 matrices directly P1 = a ( g - h ) P2 = ( a + b ) h

Example - continued P3 = ( c + d ) e P4 = d ( e - f ) P5 = ( a + d ) ( e + h ) P6 = ( b - d ) ( f + h ) P7 = ( a - c ) ( e + g )

Example - continued s = P1 + P2 t = P3 + P4 r = P4 + P5 + P6 - P2 u = P1 + P5 - P3 - P7