Codificando Matrizes

§ 0

Origem:
Os antigos chineses apreciavam as vantagens da manipulação de matrizes ao lidar com equações lineares. Dentro da história da matemática chinesa, a obra "Nove capítulos" é de maior destaque. Sua influência estendeu-se ao Japão, onde Seki Kowa (1642-1708) formulou o conceito que hoje nós chamamos de determinante, através de sua compreensão das operações elementares utilizadas na eliminação chinesa. Posteriormente, Arthur Cayley (1821-1895) fez a distinção entre a noção de determinantes e as operações algébricas de matrizes.

Operações básicas:
- Adição de matrizes: [A+B]ij=[A]ij+[B]ij para cada i e j.
- Transposição: A=[aij], então [AT]ij = aji.
- Multiplicação de escalares: [αA] ij = α[A]ij para cada i e j. 
- Multiplicação de matrizes: Ai₁B₁j+Ai₂B₂j+···+AirBrj.
- Matriz inversa: AB=In e BA=In.

Para fazer as operações básicas entre as matrizes, temos a biblioteca numpy:

Irá retornar:
[8 9 3] [ 7 20  2]
[[1 4 7]
 [2 5 8]
 [3 6 9]] 

Criptografiando mensagens com a matriz inversa:
Podemos criptografar mensagens utilizando a propriedade da matriz inversa. Por exemplo, Alice deseja enviar uma mensagem secreta para Bob. Para isso, ela atribui um número a cada letra do alfabeto. Depois ela crifra a mensagem em uma matriz multiplicando pela sua chave (T=MC). Bob decodifica a mensagem, multiplicando a mensagem pela inversa da chave, (T=MC⁻¹).

O código abaixo demonstra o processo:
Retornado a mensagem: 'greatwork'. ;)


* Fontes:
Aspectos da Matemática Chinesa: O "Nove Capítulos" - Marcel Vinhas Bertolini.
Matrix Analysis and Applied Algebra - C. Meyer.

http://www.programiz.com/python-programming/examples/multiply-matrix 
http://www.python-course.eu/matrix_arithmetic.php

O que é isso?

Vc está lendo Codificando Matrizes.

meta

§ Leave a Reply