A =0,800,600,60−0,80autovalores 1,00 e −1,00sela: autovalores de sinais opostosAo fundo, cada traço acompanha o campo de vetores que associa a cada vetor x de ℝ2 o vetor Ax, e as retas tracejadas são as retas geradas pelos autovetores de A, quando os autovalores são reais. A matriz muda devagar entre cinco exemplos. Animação adaptada do Flow Field, do ThreeUI.
Agenda 2026.2
Calendário
Aulas, miniprovas (MP), exercícios escolares (EE) e etapas do projeto, conforme a proposta pedagógica da disciplina. Ajustes são avisados no Classroom.
ProjetoEquipes classificadas para a Etapa 2 do projeto, no Classroom
Dezembro
EE2Segundo exercício escolar (de transformações lineares em diante)
ProjetoApresentação dos projetos (Etapa 2)
Feriado (Nossa Senhora da Conceição, Recife)
FinalProva final
ProjetoClassificação final e bônus do projeto, no Classroom
MPminiprovaEEexercício escolarProjetoprojeto e monitoriaFinalprova final
Miniprovas e exercícios escolares
Provas e gabaritos
Enunciados em PDF e gabaritos objetivos das avaliações. As MP 10 e 11 serão feitas em duas videoaulas no YouTube, uma por miniprova, com entrega até 22/11/2026, às 23:59. A turma deve escolher 40 alunos diferentes, um para cada asserção das duas miniprovas, conforme as orientações no Classroom. Os enunciados já estão disponíveis, e os gabaritos serão divulgados em 23/11/2026. O EE 2 entra aqui depois de aplicado, e as respostas, depois de divulgadas no Classroom.
Exercícios escolares
O EE 2, em 01/12, entra aqui depois de aplicado.
EE 113/10
Primeiro exercício escolar
Conteúdo até os quatro subespaços fundamentais · questões 1 a 5 (10 pontos) e bônus opcional (até 1 ponto)
Respostas finais, como no gabarito divulgado no Classroom em 14/10. Respostas equivalentes são aceitas; matrizes e vetores seguem a ordem indicada na prova. As versões individualizadas têm gabarito próprio, também no Classroom.
Questão 1 · Sistemas lineares 2,0 pontos
a)
Forma escalonada 101401140000; solução x = (4 − t, 4 − t, t)T, com t ∈ ℝ.
b)
t ≥ 0 e 4 − t ≥ 0; portanto, 0 ≤ t ≤ 4.
c)
Uma reta, pois há uma variável livre: (4, 4, 0)T + t(−1, −1, 1)T.
Questão 2 · Eliminação, fatoração e inversa 2,0 pontos
a)
PA =110230001, m = 2 e U =110010001.
b)
Pb = (3, 7, 2)T, y = (3, 1, 2)T e x = (2, 1, 2)T.
c)
NA = I3; a resposta é somente “Sim”.
d)
(BC)T = CTBT e (BC)−1 = C−1B−1.
Questão 3 · Produtos de matrizes 2,0 pontos
a)
As linhas obtidas são (1 2), (1 1) e (0 0); assim, NW =121100.
b)
Na linha 1 e coluna 3, a entrada de N2 vale 1, e a de N(I3 + N) vale 1 + 1 = 2. Caminho com uma seta: 1 → 3; com duas setas: 1 → 2 → 3.
c)
(NW)s custa 18 + 6 = 24 multiplicações, e N(Ws), 6 + 9 = 15. Menor custo: 15, com N(Ws), pela associatividade.
Questão 4 · Bases em um espaço de matrizes 2,0 pontos
a)
α + β = 0 e −α + β = 0, logo α = β = 0: {P, Q} é linearmente independente e dim W = 2.
b)
α = 2 e β = 1; as coordenadas são (2, 1)T.
c)
S = ST =200−2 é simétrica; K =0−220 e KT =02−20= −K, logo K é antissimétrica.
d)
Linearmente dependente: as soluções são (a, b, c)T = t(−2, 1, 1)T, com t ∈ ℝ; para t = 1, −2P + Q + R = 0, com coeficientes não todos nulos.
Questão 5 · Polinômios e subespaços 2,0 pontos
a)
p(t) = 1 + 4t − 4t2 e p(1/2) = 2.
b)
f(0) = c0 e f(1) = c2; f ∈ H exige c0 = c2 = 0, com c1 livre. Uma base é {b1}, e dim H = 1.
c)
b0 ∈ L e b1 ∈ H. Para h = b0 + b1, h(0) = 1, logo h ∉ H; h também não é múltiplo de b0, logo h ∉ L. A união H ∪ L não é fechada para a adição e não é subespaço.
Bônus · Operações em um espaço vetorial até 1,0 ponto extra
a)
0V = (0, 1)T, e o inverso de u = (1, 2)T é (−1, 0)T: (1, 2)T ⊕ (−1, 0)T = (0, 1)T.
b)
Resultados do item b do bônus
u ⊕ v
2 ⊙ u
2 ⊙ v
1 ⊙ u
(3, 2)T
(2, 3)T
(4, 1)T
(1, 2)T
2 ⊙ (u ⊕ v)
(2 ⊙ u) ⊕ (2 ⊙ v)
3 ⊙ u
(2 ⊙ u) ⊕ (1 ⊙ u)
(6, 3)T
(6, 3)T
(3, 4)T
(3, 4)T
c)
Não: 0V = (0, 1)T tem segunda coordenada 1, e os vetores de H têm segunda coordenada 0.
Os PDFs ficam no Google Drive e abrem com a conta @cin.ufpe.br de quem está matriculado no Classroom.
Notas
Avaliação
Dois exercícios escolares, onze miniprovas e um projeto bônus, conduzido pela monitoria.
Média
0,7 EE+0,3 MP+Bônus
Prova final em 10/12.
EE
Média dos dois exercícios escolares, (EE1 + EE2)/2.EE1 em 13/10 · EE2 em 01/12
MP
Média das 11 miniprovas.Em geral às quintas-feiras; algumas são feitas pela turma, em vídeo
Bônus
Projeto, valendo até 2 pontos na média.Torneio de reconstrução de matrizes; regras liberadas em 18/10 e apresentações em 03/12
Bônus de até 2 pontos
Projeto: torneio de reconstrução de matrizes
Cada equipe escreve, em Python, uma função que estima as entradas ocultas de uma matriz, e as equipes da turma disputam um torneio pelo menor erro. A monitoria lançou o projeto no Classroom em 18/10; as regras completas estão no guia.
A matriz completa tem posto 1: cada linha é múltipla da primeira. Sabendo disso, as entradas conhecidas determinam as três ocultas: 2, 6 e 3. Preencher as três com a média das entradas conhecidas daria 5,4 em cada uma.
Abrir o laboratório do projetoDoze matrizes e cinco estratégias simples, com pseudocódigo, para ver o erro de cada uma, comparar todas no torneio e tentar vencê-las preenchendo à mão.
A ideia
Muitas tabelas de dados da computação têm entradas faltando: avaliações que ninguém deu, leituras de sensores perdidas, pixels corrompidos. No torneio, cada equipe recebe matrizes assim e escreve uma função que estima as entradas ocultas a partir das conhecidas.
Preencher cada entrada oculta com a média da sua linha ou da sua coluna já dá uma primeira solução. Para errar menos, a equipe estuda a estrutura da matriz: posto, espaço das colunas, projeções e mínimos quadrados, assuntos desta disciplina, e a decomposição em valores singulares, que não faz parte do programa e fica para a pesquisa da equipe.
Como funciona
Etapa 1, o código. A equipe escreve um arquivo .py com a função principal(observada, mascara), que recebe a matriz observada e a máscara das posições conhecidas e devolve a matriz completa, com as mesmas dimensões, como numpy.ndarray ou como lista de listas. Para testar e refinar o código, há um lote público de 10 matrizes; o funcionamento e os resultados que valem são os do programa avaliador da monitoria.
Entrega, até 20/11, às 23:59. Um único arquivo .zip pelo Classroom, com o nome Grupo seguido do número da equipe (por exemplo, Grupo7.zip), contendo o código e um relatório curto que explique o algoritmo. Só um integrante entrega, e ele escreve os nomes da equipe num comentário particular na postagem da entrega.
Classificação. Depois do prazo, a monitoria roda os códigos num lote privado de matrizes e mede o erro só nas posições ocultas, pelo RMSE normalizado (NRMSE): a raiz do erro quadrático médio dividida pelo desvio-padrão. Quanto menor o erro, melhor a posição. Passam à Etapa 2 as N primeiras equipes, com N calculado pelo número T de equipes inscritas, e outras equipes com entrega válida podem ser sorteadas. Em 29/11, a monitoria divulga no Classroom as classificadas, em ordem numérica; a classificação da Etapa 1 não é divulgada, porque o erro continua como critério central da classificação final.
N = max(3, min(6, ⌈0,4 T⌉))
Etapa 2, a apresentação, em 03/12. Cada equipe classificada mostra aos monitores, em até 10 minutos, o algoritmo, o código funcionando, uma interpretação dos resultados e o que aprendeu no projeto. Depois, por cerca de 5 minutos, a monitoria pergunta a todos os integrantes sobre o algoritmo e a autoria do código. A ordem das equipes é sorteada no dia, antes da aula. A classificação final e o bônus de cada equipe saem no Classroom em 12/12.
Regras
Tamanho máximo: 40 linhas e 40 colunas (40 × 40). Esse limite vale para cada dimensão, tanto no lote público quanto no privado. As matrizes podem ser quadradas ou retangulares. O código deve usar as dimensões recebidas em observada.shape.
Participar é opcional. As equipes têm até três pessoas, de preferência trios, e se inscrevem na planilha da postagem do lançamento até 25/10, às 23:59; o número do campo na planilha é o número da equipe.
Python, só com NumPy, SciPy, math e random. Bibliotecas de aprendizado de máquina ou de imputação automática, como scikit-learn e PyTorch, são proibidas.
O avaliador roda o código num ambiente restrito (RestrictedPython): não se pode fixar a semente dos números aleatórios nem definir classes, e as funções auxiliares ficam dentro de principal. O limite é de 2 segundos por matriz e 25 segundos por lote.
É desclassificada a equipe que não entregar no prazo ou cujo código final devolva uma matriz de dimensões erradas, com NaN ou com valores infinitos, ultrapasse o limite de tempo ou termine com erro.
Bônus na média final
A equipe campeã ganha 2 pontos. Entre as N finalistas, a equipe na posição P ganha B(P) pontos, valor que cai em passos iguais de 2, na primeira posição, até 0,75, na última:
B(P) = 2,0 − (P − 1) · 1,25/(N − 1)
Uma equipe que não chega à Etapa 2, mas entrega uma solução válida, ganha 0,5 ponto.
Um esboço do arquivo, na forma pedida pelo guia:
import numpy as np
def principal(observada, mascara):
# mascara: True onde a entrada# de observada é conhecida
saida = observada.copy()
... # estime as ocultasreturn saida # mesma forma
Material da monitoria
Guia de regrasPDF · inscrição, código, entrega, classificação e bônus
Programa avaliadorArquivo .zip · roda com o Docker: extraia o arquivo e siga o README.md
Abram com a conta @cin.ufpe.br da turma. Se o avaliador precisar de ajuste, a monitoria avisa no Classroom como atualizá-lo com docker compose pull. Dúvidas sobre as regras, a especificação ou a execução vão, de preferência, ao Discord da disciplina.
Entradas oficiais
As 10 entradas oficiais foram fixadas em . Cada SHA-256 identifica um arquivo exato do lote. Os dados permanecem em sigilo.
Consultar os SHA-256 das 10 entradas
Cada entrada tem um gerador Python e três arquivos NumPy: gabarito, máscara e matriz observada. Os hashes abaixo permitem conferir os geradores e os dados utilizados na avaliação.
Cada módulo reúne os tópicos da ementa, as seções correspondentes do livro-texto, aulas gravadas da disciplina e vídeos de apoio, uma figura com um exemplo resolvido, o laboratório das aulas e os exercícios no Desmos.
Matrizes, eliminação de Gauss, espaços vetoriais, ortogonalidade, determinantes, autovalores e autovetores. Esses assuntos se dividem nos quatro módulos abaixo.
Livro-texto: Gilbert Strang, Álgebra Linear e suas Aplicações, capítulos 1 a 5 (veja a Bibliografia). Aulas do CIn: vídeos do Prof. Pedro M. M. de Castro, em português, publicados gradualmente na playlist da disciplina. Vídeos de apoio: aulas de Strang no MIT (curso 18.06, no MIT OpenCourseWare), em inglês. Laboratório: uma página por aula, com roteiro guiado, exemplos e experimentos em dimensão n; todas em Laboratório das aulas. Exercícios: 36 exercícios interativos do Desmos, que abrem numa aba nova e não pedem login; veja Exercícios no Desmos.
Imagem das linhas: cada equação do sistema é uma reta do plano euclidiano E2, formado por pontos; as duas retas se cortam no ponto (1, 2), e x = 1, y = 2 é a solução do sistema[2 −1; −1 2] [x; y] = [0; 3]
1
Matrizes e eliminação de Gauss
Geometria das equações lineares, exemplo de eliminação de Gauss, notação matricial e multiplicação de matrizes, fatores triangulares e trocas de linhas, inversas e transpostas.
Imagem das colunas: o vetor b = (0, 3)T é combinação linear das colunas a1 = (2, −1)T e a2 = (−1, 2)T da matriz A, então pertence ao espaço das colunas de A1·[2; −1] + 2·[−1; 2] = [0; 3]
2
Espaços vetoriais
Espaços vetoriais e subespaços, resolução de Ax = 0 e Ax = b, independência linear, base, dimensão, os quatro subespaços fundamentais, transformações lineares.
A matriz A, de linhas (2, 1) e (1, 2), leva o quadrado unitário num paralelogramo de área det A = 3. As retas tracejadas são geradas pelos autovetores (1, 1)T, de autovalor 3, e (1, −1)T, de autovalor 1[2 1; 1 2] [1; 1] = 3 [1; 1][2 1; 1 2] [1; −1] = [1; −1]
4
Determinantes, autovalores e autovetores
Propriedades dos determinantes, fórmulas para determinantes, autovalores e autovetores, diagonalização de matrizes.
São 36 exercícios interativos do Desmos, na plataforma Amplify, de dois a três por aula. Cada botão abre o exercício numa aba nova, sem login. Cada tela tem o botão Conferir, que diz se a resposta está certa. Se preferir, entre em student.amplify.com/join e digite o código que aparece abaixo do botão. Os códigos valem até 29/10/2027. Se algum exercício não abrir ou parecer errado, avise o professor e diga o código (por exemplo, AL07).
ou entre em student.amplify.com/join com o código FBN6JW
Referências
Bibliografia
Os quatro livros da disciplina estão no acervo da UFPE. O catálogo mostra em que biblioteca estão os exemplares e se estão disponíveis para empréstimo.
Livros no acervo da UFPE
Livro-texto
Álgebra Linear e suas Aplicações
Gilbert Strang
Tradução da 4ª edição norte-americana · Cengage Learning · 2010
Na UFPE: Biblioteca do CCEN, Biblioteca do CTG e biblioteca do Campus do Agreste, em Caruaru. Em inglês, a 3ª edição (1988) está no CTG, e a 1ª (1976), no CCEN.