Augusto Armando de Castro Júnior (UFBA) Aplicações de Análise a Álgebra Linear Florianópolis, SC 2014 Augusto Armando de Castro Júnior (UFBA) Aplicações de Análise a Álgebra Linear Minicurso apresentado no IIIo Colóquio de Matemática da Região Sul, realizado na Universidade Federal de Santa Catarina, em maio de 2014. Florianópolis, SC 2014 Resumo No presente livro, estudamos o espectro de operadores em dimensão finita e seus espaços invariantes associados. Mais precisamente, explicamos as técnicas para calcular os autovalores e os respectivos autoespaços de um operador em dimensão finita. Como um subproduto natural, desenvolvemos técnicas de Análise precisas e estáveis para calcular raízes de polinômios. Palavras-chaves: Cálculo de Autovalores e Autoespaços; Cálculo de Raízes de polinômios; Análise Complexa; Operadores com Autovalores Dominantes. Lista de ilustrações Figura 1 – Teorema de Cauchy-Goursat em região triangular . . . . . . . . . . . . . . . . . . . . . . . 70 Figura 2 – Fórmula Integral de Cauchy . . . . . . . . . . 73 Figura 3 – Série de Laurent . . . . . . . . . . . . . . . . 77 Figura 4 – Resíduos . . . . . . . . . . . . . . . . . . . . 80 Figura 5 – Teorema dos Resíduos . . . . . . . . . . . . . 81 Figura 6 – Execução do programa de Cálculo de Raízes. 114 Figura 7 – Execução de programa de Cálculo de Projeções145 Figura 8 – Métrica Projetiva- Função α . . . . . . . . . 150 Figura 9 – Métrica Projetiva- Função β . . . . . . . . . 151 Figura 10 – Cálculo de Autovalores Dominantes. . . . . . 167 Figura 11 – Execução do programa domincoloq. . . . . . . 168 Figura 12 – Execução com matriz 4 por 4. . . . . . . . . . 169 Sumário Introdução . . . . . . . . . . . . . . . . . . . 1 1 Uma visão de Álgebra Linear via Funções de Operadores . . . . . . . . . . . . . . . . . . . 9 1.1 Avaliando polinômios em matrizes . . . . . . . 30 1.2 Exercícios . . . . . . . . . . . . . . . . . . . . 33 2 Funções Analíticas . . . . . . . . . . . . . . 35 2.1 Sequências e séries em Espaços de Banach . . 37 2.2 O Espaço Normado das Aplicações Lineares Contínuas . . . . . . . . . . . . . . . . . . . . 52 2.3 Integração de Caminhos em Espaços Vetoriais 60 2.4 A Teoria de Cauchy-Goursat . . . . . . . . . . 68 2.5 Resíduos . . . . . . . . . . . . . . . . . . . . . 78 2.6 Programa de Cálculo de raízes de polinômios . 84 2.7 Exercícios . . . . . . . . . . . . . . . . . . . . 113 3 Funções de Operador . . . . . . . . . . . . . 117 3.1 Funções analíticas de operadores . . . . . . . . 117 3.2 Noções Básicas de Teoria Espectral . . . . . . 124 3.3 Programa de Cálculo de projeções espectrais . 131 3.4 Exercícios . . . . . . . . . . . . . . . . . . . . 146 4 Operadores com autovalores dominantes . . 147 4.1 Calculando autovalores dominantes e seus autoespaços . . . . . . . . . . . . . . . . . . . . . 148 4.2 Cones e Métricas Projetivas . . . . . . . . . . 149 4.3 Programa de Cálculo de Autovalores Dominantes de Operadores Positivos . . . . . . . . . . 160 4.4 Exercícios . . . . . . . . . . . . . . . . . . . . 166 5 O Operador Adjunto 5.1 Aplicação: generalizando o Teorema de von Neu- . . . . . . . . . . . . . 171 mann . . . . . . . . . . . . . . . . . . . . . . . 187 5.2 Exercícios . . . . . . . . . . . . . . . . . . . . 195 Conclusão . . . . . . . . . . . . . . . . . . . 197 Referências . . . . . . . . . . . . . . . . . . . 199 7 Prefácio Quanta Matemática é necessária para uma revolução tecnológica? As recentes e populares tecnologias de Internet, celular, diagnóstico por imagem têm demonstrado que a grande revolução pela miniaturização eletrônica já é tão de domínio público hoje em países ascendentes como o aço ou a eletricidade há 4 décadas. Ou seja, que hoje, são as idéias (Matemáticas), quem faz a diferença nas novas tecnologias, pois, a eletrônica para implementá-las, todos têm o potencial de construir. Vejamos os nossos exemplos. Tanto a ressonância Magnética como a Tomografia Computadorizada têm por base a transformada de Radon, teoria matemática estabelecida nas três primeiras décadas do século passado. O celular seria impossível sem a teoria de Wavelets que nada mais é que uma melhoria computacional da transformada de Fourier do início do século XIX. A idéia por trás de transformada de Fourier é bastante simples, a decomposição de vetores com respeito a uma base ortonormal. Vale ressaltar que a Finlândia, via Nokia, dominou inicialmente o mercado de celulares justamente por ter investido precocemente no estudo de técnicas de compactação e controle de erros de dados via Wavelets, ao primeiro sinal de que tal tecnologia iria se tornar popular no futuro. Sim, pesquisa em teoria Matemática e Computacional, não em eletrônica. Finalmente, todos diariamente fazemos buscas com o veloz buscador da Google. É mais rápido buscar um conteúdo na Internet que no próprio computador, hoje em dia. Poucos sabem 8 SUMÁRIO que isto é porque, no âmago deste programa, jaz uma versão para Matrizes Positivas do Teorema do Ponto Fixo de contrações. Tal versão é o famoso teorema de Perron. Brin, um dos fundadores do Google e um dos pais desse motor de busca, é matemático e filho de um eminente pesquisador em Teoria Ergódica, e usou desse Teorema, da primeira década do século XX, cujo algoritmo é exponencialmente rápido, conforme a teoria e qualquer cidadão consegue ver. Enfim, a vida inteligente adentrou a Internet de modo a viabilizá-la. Voltando à nossa pergunta inicial, os parágrafos anteriores nos dão algumas pistas para respondê-la. Certamente a Matemática de que precisamos hoje vai bem além da Matemática dos mesopotâmios e egípcios, ou daquela que muitos usamos para conferir o troco no ônibus e que a maioria dos educadores matemáticos crêem ser a grande matemática presente no dia-adia. Certamente, é uma Matemática que vai além dos cursos de Álgebra Linear que muitos estudantes em Engenharia ficam a se perguntar ingenuamente para que servem. Mas esta, da Álgebra Linear, já se encontra a meio caminho da Matemática com que convivemos no mundo moderno. Em Álgebra Linear, grandes idéias já estão presentes, embora nem sempre sejam enfatizadas como deveriam. Por exemplo, o Teorema de Perron nos diz que matrizes com todas as entradas positivas tem um autoespaço de dimensão um (uma reta) que, a menos de uma normalização, atrai todos os pontos do espaço, quando iteramos a matriz. Ou seja, é um teorema sobre Cálculo de autovalores e autovetores de uma matriz com todas as entradas positivas. Algo simples, mas a Google está aí para acabar com todo o palavrório sobre a inutilidade da Matemática ou da Álgebra Linear. SUMÁRIO 9 O presente escrito objetiva prover técnicas para cálculos de autovalores e autoespaços de um operador linear em dimensão finita. Como sabemos, autovalores e autovetores permitem entender como um operador linear em dimensão finita atua algebrica e geometricamente sobre o espaço. O estudo de operadores lineares é de importância transcendente para a Análise e a Matemática como um todo. Não apenas porque a derivada de uma função avaliada em um ponto é uma aplicação linear, mas também porque é linear (porém, atuando em dimensão infinita) o operador que a cada função derivável associa a sua função derivada. Dedicamos o primeiro capítulo a uma revisão da Álgebra Linear e o estudo de operadores em dimensão finita, motivando com exemplos o uso da avaliação de polinômios em matrizes para cálculo de autoespaços e autovalores. Tais homomorfismos de avaliação e sua utilidade motivam a questão de estendê-los a uma classe maior de funções, digamos, analíticas. Para tal, os argumentos algébricos são insuficientes. Iniciamos o segundo capítulo com a Análise real e Complexa necessária ao estudo do Espectro e funções de Operadores. De fato, adaptamos facilmente tais teorias para funções holomorfas tomando valores em espaços de operadores, em vez de em C, como se vê em disciplinas finais de graduação. Como um subproduto da teoria, apresentamos um programa para encontrar as raízes de um polinômio em uma dada região do plano complexo. Munidos dessa Teoria de Cauchy-Goursat adaptada a espaços de operadores, desenvolvemos no terceiro capítulo do livro a teoria de funções de Operadores e provamos o que costu- 10 SUMÁRIO mamos chamar de proto-versões dos teoremas de Decomposição do Espectro, os teoremas de Cálculo Funcional e Mapeamento Espectral. As consequências são profundas. Por um lado, o raio espectral nos permite obter cotas para a norma de iterados grandes do operador. São definidas as componentes espectrais, e demonstrada a existência de espaços invariantes associados as mesmas. Via Teoria Cauchy-Goursat, obtemos métodos de calcular projeções associadas a espaços invariantes pelo operador. Na penúltima seção do capítulo, apresentamos um programa em linguagem C que é uma aplicação surpreendente da teoria vista: permite calcular um autoespaço generalizado de um autovalor, sem que conheçamos com precisão este autovalor. Um legado longínquo do Teorema Fundamental do Cálculo de Newton... No quarto capítulo, estudamos operadores em que exista um autovalor cujo módulo é estritamente maior que todos os outros. Apresentamos técnicas eficientes para calcular tal autovalor e seu autoespaço associado. O caso de operadores com todas as entradas positivas é abordado em pormenor, com técnicas específicas. Este é o caso explorado pelo programa de busca da Google na Internet. No último capítulo, estudamos o adjunto de um operador e as informações que traz para o estudo do operador primal. O celebrado Teorema Ergódico de Von Neumann é provado aqui em uma versão bem mais geral que a original. Ao final, não respondemos à nossa questão. A Matemática da segunda metade do século passado, e do atual, tem embasado as teorias físicas que levam ao desenvolvimento do Computador Quântico e do Reator de Fusão Nuclear. Enfim, com o SUMÁRIO 11 presente texto, apenas cobrimos uma pequena parte, porém bela e interessante, da Matemática de que precisamos. Agradecimentos Gostaria de agradecer ao Comitê Organizador do 3o. Colóquio de Matemática da Região Sul, pela imensa atenção no processo de submissão e feitura deste livro, o qual resultou em um texto de estilo bem adequado a iniciantes, inclusive com exemplos e aplicações computacionais. Quanto a isso, somos também reconhecidos à UFBA e a oportunidade que nos tem dado de ministrar o curso de Teoria Espectral no doutorado, assunto sobre o qual ora concluímos um livro avançado. Com os colegas e amigos da UFBA, tivemos conversações frutíferas sobre os assuntos aqui apresentados, especialmente com Paulo Varandas e Samuel Barbosa. Sou mais que grato pela acolhida carinhosa em seu lar e apoio de minha querida Elis de Oliveira e seu filho Matheus durante o carnaval de 2014, quando este livro foi concluído. Ressalto ainda a influência de meus professores Marcelo Viana e o saudoso Carlos Isnard, que certamente se agradaria muito deste texto. Finalmente, registro minha gratidão para com o professor Elon Lages Lima, em cujos bem escritos livros de Análise, sempre nos inspiramos na criação de mais literatura matemática de alto nível em língua portuguesa. Augusto Armando de Castro Júnior Universidade Federal da Bahia Salvador, 06 de março de 2014. 14 SUMÁRIO 1 Introdução Calculando Autovalores e Autoespaços Comecemos com E a ser um espaço vetorial complexo de dimensão finita e A : E → E um operador linear contínuo. Nesse contexto inicial, o espectro de A (denotado por sp(A)) é simplesmente o conjunto dos λ ∈ C tais que (λI − A) não possui inversa, onde I : E → E designa a identidade. Ou seja, nesse caso de dimensão finita o espectro é apenas o conjunto dos autovalores de A. Dos cursos de Álgebra linear, sabemos que tais autovalores possuem associados a si, espaços invariantes por A, os quais permitem descrever de modo simplificado a geometria da ação do operador no espaço. A exigência do espaço ser complexo, é primordialmente para garantir que o operador possua autovalores. Consideremos assim o seguinte exemplo em que a matriz e todos os autovalores são reais. Seja A : R2 → R2 o operador linear dado por A(x, y) := ! 3 1 0 1/2 × x y ! . O modo costumeiro como se calcula o espectro e os respectivos espaços invariantes associados compôe-se de duas partes. Primeiro, calculamos os autovalores da matriz. Para isso, precisamos saber para que valores λ ∈ C, λI − A deixa de ser injetiva, 2 Introdução ou seja, seu determinante é zero. Temos portanto: det(λI − A) = 0 ⇔ (λ − 3)(λ − 1/2) = 0, ou seja, os autovalores de A são justamente as raízes do polinômio det(λI − A), ou polinômio característico de A. Aqui, já notamos a primeira grande dificuldade: autovalores de uma matriz são as raízes de polinômios de mesmo grau que a dimensão do espaço em que atua a matriz. Ora, sabemos que a partir do grau 4, há polinômios cujas raízes não podem ser expressa por meio de radicais (ou seja, há equações polinomiais impossíveis de serem resolvidas por qualquer método algébrico). Como estamos em um exemplo em dimesão 2, a equação é do segundo grau e temos sp(A) = {3, 1/2}. Note que associados aos elementos de sp(A), sabemos do curso de Álgebra linear que temos dois espaços invariantes por A. Nestes espaços, A age respectivamente como o produto pelos escalares 3 e 1/2. Como isolar, por exemplo o espaço associado a 1/2? Lembremos como fazemos isso ainda do modo usual em um curso de Álgebra linear, digamos, para o autoespaço associado a λ = 1/2. Didaticamente dividiremos o procedimento em três fases: 1. Qualquer autovetor v de um autovalor λ é simplesmente um elemento de ker(λI − A), ou seja, é solução da equação linear (com infinitas soluções), (λI − A)v = 0, cujo conjunto solução é um espaço vetorial não trivial, o autoespaço associado a λ. Encontrar a solução completa desta equação, por conseguinte, é encontrar uma base para o espaço ker(λI −A), o que corresponde a encontrar um conjunto linearmente independente de tamanho máximo de soluções para a dita equação. No exemplo em questão, portanto, 3 temos a equação: (1/2I − A)v = 0 ⇔ −5/2 0 ! −1 0 × x y ! = 0 ! 0 . 2. O próximo passo, claro, é aplicar o escalonamento Gaussiano a matriz de λI − A. Note que, como o exemplo é simples, a matriz acima já está escalonada (caso não estivesse, aplicaríamos o método Gaussiano de escalonamento). 3. Contamos o número de linhas nulas advindas do escalonamento Gaussiano. Elas correspondem à dimensão do ker(λI − A). Partimos de cima até baixo na diagonal, observando que posições são não nulas: correspondem a variáveis dependentes, não livres, cujo valor será calculado em função das livres. No caso, na primeira linha, o coeficiente de x é −5/2, logo, seu valor será determinado pelas variáveis livres. Como a última linha é identicamente nula, segue-se que a última variável, y, que temos é uma variável livre. 4. Precisamos resolver a equação (λI − A)(v) = 0 tantas vezes quanto forem o número de variáveis livres, e a cada vez, atribuindo valores diferentes a essas variáveis com os quais determinamos o valor das variáveis dependentes, de forma a que os vetores solução achados sejam linearmente independentes entre si. Como temos apenas uma variável livre y, arbitramos a ela o valor de 1. (Se estivéssemos em dimensão mais alta, e tivessémos, digamos, por exemplo, duas variáveis independentes y e z, arbitraríamos valores l.i.’s, ao par, digamos, primeiro, (y, z) = (1, 0), e resolveríamos a equação uma vez, obtendo um vetor solução, e 4 Introdução depois, atribuiríamos (y, z) = (0, 1), obtendo o outro vetor solução linearmente independente com o primeiro.) Temos então: −5/2 −1 0 0 ! × x 1 ! = ! 0 0 . ⇒ x = −2/5. Portanto, v= −2/5 ! 1 é um autovetor gerador do autoespaço associado ao autovalor 1/2. Vejamos agora uma outra técnica, ainda algébrica, para encontrarmos autoespaços. Usaremos o mesmo exemplo, e os autovalores calculados, em uma abordagem alternativa muito estética de Álgebra linear. Veja que interessante: considerando o polinômio (x−3) 1/2−3 ·x avaliado em A, obtemos (usando do isomorfismo que há entre aplicações lineares e matrizes na base canônica): ! ! ! 0 −2/5 3 1 0 −1/5 × = . 0 1 0 1/2 0 1/2 Note que o polinômio (x−3) 1/2−3 zera em x = 3 e é 1 em 1/2. Sua avaliação em A nos dá a matriz Π1/2 := 0 0 ! −2/5 1 , chamada projeção espectral. Ela de fato é uma projeção sobre o espaço associado ao autovalor 1/2 (já tinhamos visto que (−2/5, 1) é autovetor associado a 1/2 - escrevemos o vetor como 5 linha por comodidade de edição). Para vermos que ela é uma projeção basta observar que ! 0 −2/5 0 2 Π1/2 = × 0 1 0 ! −2/5 1 = 0 −2/5 0 1 ! = Π1/2 . Como Π1/2 é obtida via avaliação de um polinômio em A (a identidade é o mesmo que A0 ), ela comuta com A. Desta comutatividade, segue-se que Π1/2 (R2 ) ⊃ Π1/2 (A(R2 )) = A(Π1/2 (R2 )), ou seja, que A(Π1/2 (R2 )) ⊂ Π(R2 ), que é o mesmo que dizer que a imagem Π1/2 (R2 ) := E(1/2) é um espaço invariante por A. Em capítulos mais adiante (e de modo muito geral), veremos como consequência que sp(A|E(1/2) ) é realmente igual a {1/2}. Em resumo: se o espectro puder ser particionado em componentes abertas e fechadas nele mesmo (as chamadas componentes espectrais), cada uma dessas componentes possui associada a si um subespaço invariante pelo operador, o qual pode ser calculado avaliando-se o operador em uma função que é um nela, e zero nas demais componentes (além de ter suas derivadas até certa ordem também nulas, como veremos nos próximos capítulos). Veremos ainda que a restrição do operador a um desses subespaços tem seu comportamento assintótico grandemente governado pelo supremos dos valores absolutos dos números constantes na componente associada. Quando se considera um operador linear A atuando em espaços de dimensão infinita, o espectro (cuja definição difere da anterior só por exigir a continuidade das inversas envolvidas, 6 Introdução condição automática quando a dimensão é finita) não consiste geralmente em um número finito de pontos. Assim precisamos considerar a avaliação de A em funções mais complicadas que polinômios, que zerem em todas as componentes espectrais menos naquela que estejamos interessados. Para tal, precisamos avaliar A em funções holomorfas cujo domínio seja desconexo. O que é possível adaptando a teoria de Análise Complexa de Cauchy para o contexto de aplicações com domínio em um aberto em C e tomando valores em espaços de Banach. Essa adaptação tem aplicações muito interessantes, mesmo se retornarmos nosso foco para a dimensão finita. Tomando de uma função holomorfa, mas com domínio desconexo, que seja 1 em uma vizinhança de um certo autovalor λ1 , e 0 em uma vizinhança dos demais, a avaliação dessa função na matriz A, da mesma forma como no exemplo acima, nos dá a projeção associada ao autoespaço (a bem da verdade, o autoespaço generalizado!) de λ1 . Ora, não é necessário conhecer precisamente um autovalor, basta conhecer uma vizinhança que o isole dos demais, para definir tal função. Então conseguimos calcular com precisão seu autoespaço conhecendo com uma tosca aproximação o autovalor! Isso também permite uma outra aplicação interessante, um método de achar raízes de polinômios em C, pois uma vez calculado o autoespaço, é imediato calcular o autovalor, e sabemos que autovalores são raízes do chamado polinômio característico associado a matriz. Dessa forma, dado um polnômio, este possui associado a si uma matriz companheira, da qual ele é o polinômio característico, suas raízes são os autovalores desta matriz, os quais calculamos de maneira fácil após calcularmos seus correspondentes autoespaços. Em resumo, temos técnicas analíticas que não só permitem calcular autoespaços sem conhecer com precisão os respectivos 7 autovalores, como adicionalmente permitem resolver o problema de achar com precisão a raiz de qualquer polinômio, problema este que a princípio parecia ser um obstáculo, a teoria de simplificação de operadores, mas que acaba sendo resolvido por esta mesma teoria, junto com a Análise Complexa, São aplicações que unem de uma forma bastante original duas áreas distintas da Matemática, a Álgebra Linear e a Análise Complexa, e trazem em si o sabor que convidamos o leitor a conhecer nas próximas páginas. Entretanto, não são as únicas técnicas que pretendemos expor. No caso em que o operador possui um autovalor dominante, isto é, com módulo estritamente maior que qualquer outro, existe um cone em torno de seu espaço invariante que é jogando estritamente dentro de si mesmo. Todo iterado de vetor dentro deste cone, suficientemente grande, se aproxima do autoespaço generalizado do autovalor dominante. Isso nos dá, neste caso específico, uma forma de calcular um autoespaço, e seu autovalor. Como subproduto, também nos dá uma forma de calcular raízes de polinômios. 9 1 Uma visão de Álgebra Linear via Funções de Operadores Neste capítulo relembramos muitos dos resultados sobre as representações matriciais mais simples que podemos obter para operadores lineares em dimensão finita. Como sabemos, tais resultados são o objetivo principal dos bons cursos de Álgebra Linear. Mais precisamente, dado um operador linear A : E → E definido em um espaço vetorial de dimensão finita, gostaríamos que fosse sempre possível encontrar uma base no Espaço E na qual A tivesse uma representação matricial como matriz diagonal. Ora, escrever um operador A como uma matriz diagonal aplicada aos vetores de E, quer dizer simplesmente que existe uma decomposição E := E1 ⊕ · · · ⊕ Es de E, em que a restrição de A a cada Ej , j = 1, . . . , s é um múltiplo da identidade. Isso, em geral, não é verdade, como mostram os próximos exemplos em E = R2 : Exemplo 1.1. Seja A : R2 → R2 dada por A(x, y) := 2 ! 1 0 2 × x y ! . Um cálculo simples nos dá que se A(x, y) = λ · (x, y), então necessariamente λ = 2 e (x, y) é um múltiplo de (1, 0). Ou seja, o único espaço restrito ao qual A se comporta como múltiplo é a reta gerada por (1, 0), o que é insuficiente para termos uma decomposição de R2 do tipo que falamos no parágrafo anterior. 10 Capítulo 1. Uma visão de Álgebra Linear via Funções de Operadores Exemplo 1.2. Seja A : R2 → R2 dada por ! ! x 2 −1 × . A(x, y) := 1 2 y Essa aplicação corresponde a composição de uma rotação (de ângulo maior que zero e menor que π/2) com um múltiplo da identidade. Logo, com cálculos análogos ao do exemplo anterior, é fácil provar A não é um múltiplo da identidade, se restrita a qualquer subespaço não trivial de R2 . Lembramos aqui o elementar Teorema da dimensão do Núcleo e da Imagem: Teorema 1.3. (Dimensão do Núcleo e da Imagem.) Seja A : E → V uma aplicação linear entre espaços vetoriais quaisquer E, V . Então a dimensão do Núcleo ker(A) de A, somada à dimensão da Imagem A(E) de A, é igual a dimensão de E. Prova: Seja Ê ⊂ E um espaço complementar a ker(A) em E, isto é, um espaço tal que ker(A) ∩ Ê = {0} e ker(A) + Ê = E. Daí, ker(A|Ê ) = {0} e portanto A|Ê é um isomorfismo sobre sua imagem. Dado w ∈ A(E), existe v = v0 +v̂ tal que A(v) = w, com v0 ∈ ker(A) e v̂ ∈ Ê. Logo, A(v) = A(v0 ) + A(v̂) = A(v̂), o que implica que a imagem de A é igual a de A|Ê , e portanto, ambas possuem a mesma dimensão de Ê, o qual é complementar a ker(A). Donde se segue o teorema. Agora, suponha que λ1 seja um autovalor de A : E → E, E um espaço vetorial de dimensão finita e que ker(A − λ1 I) ∩ (A − λ1 I)(E) = {0}. Então pelo teorema acima, temos que Augusto Armando de Castro Júnior 11 E = ker(A − λ1 I) ⊕ (A − λ1 I)(E). Como E(λ1 ) := ker(A − λ1 ) é deixado invariante tanto por (A − λ1 I) como por λ1 I, ele é deixado invariante por A = (A − λ1 I) + λ1 I. O mesmo raciocínio se aplica a E1 := (A − λ1 I)(E), que também é invariante por A. Se ker(A − λj I) ∩ (A − λj I)(E) = {0}, j = 1, . . . , s, podemos aplicar recursivamente o mesmo argumento a A|E1 , obtendo uma decomposição invariante E = E(λ1 ) ⊕ E(λs ), onde {λ1 , . . . , λs } são os autovalores de A, e A|E(λj ) = λj I|E(λj ) , ou seja A é diagonalizável. Mas como vimos nos exemplos mais acima, nem sempre ker(A − λj I) ∩ (A − λj I)(E) = {0}. Desse modo, o resultado que temos em geral é o seguinte Teorema 1.4. (Teorema da decomposição em autoespaços generalizados). Sejam A : Cn → Cn um operador linear complexo e Sp(A) o conjunto dos autovalores de A. Então existe decomposição Cn = ⊕λ∈Sp(A) E(λ) onde: • A · E(λ) ⊂ E(λ). • (A − λI)|E(λ) é nilpotente, isto é, (A − λI)k |E(λ) ≡ 0, para algum k ≤ dim(E(λ)). Para a prova desse teorema, precisamos do seguinte lema: Lema 1.5. Seja E um espaço vetorial, dim(E) = n < +∞. Seja T : E → E um operador linear. Então, existe uma decomposição em soma direta E = E0 ⊕ E1 tal que • T · E0 ⊂ E0 e T |E0 é nilpotente, com nulidade menor ou igual à dimensão de E0 . 12 Capítulo 1. Uma visão de Álgebra Linear via Funções de Operadores • T · E1 = E1 . Prova: Note que se T fosse tal que T ·E ∩Ker(T ) = {0}, nada mais teríamos a mostrar (bastaria tomar E0 = Ker(T ) e E1 = T · E). Isso não ocorre em geral. Entretanto, podemos mostrar que ocorre para algum T m , 1 ≤ m ≤ n. De fato, as sequências abaixo se estabilizam (em certo m ≤ n): Ker(T ) ⊂ Ker(T 2 ) ⊂ · · · ⊂ Ker(T n ) ⊂ E, E ⊃ T · E ⊃ T 2 · E ⊃ · · · ⊃ T n · E. A estabilização de tais sequências ocorre porque a dimensão de E é finita. Note que se Ker(T i ) = Ker(T i+1 ), então Ker(T i+2 ) = Ker(T i+1 ), pois se v ∈ Ker(T i+2 ) ⇒ T i+2 · v = 0 ⇒ T i+1 (T · v) = T i (T · v) = 0 ⇒ {z } | T ·v∈Ker(T i+1 )=Ker(T i ) v ∈ Ker(T i+1 ). Logo, por indução, temos nesse caso Ker(T j ) = Ker(T i ), ∀j ≥ i. De um modo análogo, se T i (E) = T i+1 (E) então T · T i (E) = T · T i+1 (E) ⇒ T i+1 (E) = T i+2 (E) Logo, T i (E) = T j (E), ∀j ≥ i. Tal implica que as sequências acima realmente se estabilizam até, no máximo seu n-ésimo termo. Além disso, são estritamente monótonas (respectivamente, crescente e decrescente) até um índice a partir dos quais elas se tornam constante. Augusto Armando de Castro Júnior 13 Mostremos que esse índice é o mesmo para ambas as sequências. Suponha que a sequência de imagens de E estabiliza para m ≤ n. Isso implica que T j · T m (E) = E1 := T m (E), ∀j ≥ 0 ⇒ T (E1 ) = E1 . Daí, pondo E0 := Ker(T m ), temos que dado v ∈ Ker(T m+1 ), como T m+1 · v = 0 se por absurdo v 6∈ Ker(T m ), então T m · v 6= 0 ∈ E1 ⇒ |{z} T · (T m · v) 6= 0 T |E1 é isomorfismo (absurdo, pois v ∈ Ker(T m+1 )). Observamos ademais que se m̂ é o primeiro índice em que a sequência de núcleos se estabiliza, então se supomos T m̂ · E ⊃6= T m̂+1 · E = T (T m̂ · E), segue-se que existe 0 6= v ∈ T m̂ (E) tal que T · v = 0. Seja portanto w tal que T m̂ · w = v. Então w ∈ Ker(T m̂+1 ) \ Ker(T m̂ ), absurdo. Concluímos dos parágrafos acima que m = m̂, isto é, ambas as sequências se estabilizam exatamente para um mesmo índice. Até o índice m, as inclusões dos espaços dessas sequências são estritas. Em particular, concluímos que a dimensão de E0 = Ker(T m ) é maior ou igual a m, ou por outra, que a nulidade (menor número de iterações que anula um operador nilpotente) de T |E0 é menor ou igual a dim(E0 ). Pelo teorema do núcleo e da imagem, temos que dim(E0 )+ dim(E1 ) = n. Para mostrar que E = E0 ⊕ E1 basta ver então que E0 + E1 gera o espaço E. De fato, seja x ∈ E. Tomando T m (x) ∈ E1 = T m (E) = T 2m (E) ⇒ ∃y ∈ E; T m (x) = T 2m (y) ⇒ T m (x − T m (y)) = 0. Logo x = (x − T m (y)) + T m (y), | {z } ∈Ker(T m ) 14 Capítulo 1. Uma visão de Álgebra Linear via Funções de Operadores o que implica que E0 + E1 geram E e dadas as dimensões desses espaços, E0 e E1 estão em soma direta. Podemos agora proceder à prova do teorema de decomposição em autoespaços generalizados: Prova: Seja λ1 ∈ Sp(A). A existência de um tal λ1 é devida ao teorema fundamental da álgebra aplicado ao polinômio característico de A dado por p(λ) := det(A−λ·I) (os autovalores de A são as raízes desse polinômio). Aplicando o lema a T := A − λ1 · I, obtemos que Cn se escreve como Cn = E(λ1 ) ⊕ E1 , com T |E(λ1 ) nilpotente e T |E1 isomorfismo. Como sabemos que dado um autovalor (por exemplo, λ1 ), existe pelo menos um autovetor v1 que lhe corresponde, temos que v1 ∈ Ker(A − λ1 · I) ⊂ Ker((A − λ1 · I)m ) = E(λ1 ), o que implica que E(λ1 ) é não trivial. Como já dissemos, (A − λ1 )|E(λ1 ) é nilpotente, com nulidade k = m ≤ dim(E(λ1 )). Como (A − λ1 · I)(E(λ1 )) ⊂ E(λ1 ), vale ainda que A(E(λ1 )) = (A − λ1 · I)(E(λ1 )) + λ1 · I(E(λ1 )) ⊂ E(λ1 ). Note ainda que T (E1 ) = E1 , portanto, (A − λ1 · I)(E1 ) = E1 , e se tomamos v ∈ E1 , então A · v − λ1 · v ∈ E1 ⇒ A · v ∈ E1 . Donde obtemos que A(E1 ) ⊂ E1 . Observamos ainda que: • A|E0 : E0 → E0 não contém autovetor de A que não seja do autovalor λ1 . De fato, se λ 6= λ1 é um autovalor de A, se por absurdo existisse um autovetor v de λ contido em E0 , obteríamos: (A − λ1 ) · v = A · v − λ1 · v = (λ − λ1 ) · v ⇒ Augusto Armando de Castro Júnior 15 T j · v = (λ − λ1 )j · v 6= 0, ∀j ∈ N o que é uma contradição com o fato de que T |E0 é nilpotente. • Todos os outros possíveis autovetores de A, referentes aos autovalores distintos de λ1 estão contidos em E1 . Realmente, suponha por absurdo que existe um autovetor v ∈ E de um autovalor λ ∈ C mas v ∈ / E1 e v ∈ / E0 = E(λ1 ). Então podemos escrever v = v0 +v1 , com v0 ∈ E0 e v1 ∈ E1 não nulos. Supondo que k1 seja a nulidade de (A − λ1 )|E0 , obteríamos: E1 63 (λ−λ1 )k1 ·v = (A−λ1 )k1 ·v = (A−λ1 )k1 ·v0 +(A−λ1 )k1 ·v1 = ((A − λ1 )|E0 é nilpotente) (A − λ1 )k1 · v1 ∈ E1 , absurdo. Logo, A|E1 : E1 → E1 , e podemos reaplicar o lema, dessa vez tomando um autovalor λ2 de A|E1 . Aí obtemos Cn = E(λ1 ) ⊕ E(λ2 ) ⊕ E2 ; continuando nesse procedimento até que {z } | E1 Ej = {0} (e por conseguinte, sejam exauridos todos os autovalores de A, que são em número finito pois o espaço tem dimensão finita) segue-se o teorema. Corolário 1.6. Todo operador linear A : Cn → Cn se escreve como A = D + N , com D · N = N · D, onde D é um operador diagonalizável e N é nilpotente. Além disso, tal decomposição é única. 16 Capítulo 1. Uma visão de Álgebra Linear via Funções de Operadores Prova: Definamos o operador linear D em Cn definindoo em cada E(λi ) da decomposição em soma direta Cn = ⊕λ∈Sp(A) E(λ) = ⊕rj=1 E(λj ). De fato, definimos D|E(λj ) := λj · I|E(λj ) , o que implica definirmos N |E(λj ) := (A − λj · I)|E(λj ) . Seja β = {v11 , . . . , v1d1 , . . . , vr1 , . . . , vrdr }, onde dj = dim(E(λj )) e {vj1 , . . . , vjdj } constitui uma base de E(λj ). Como os E(λj ) estão em soma direta, temos que β é base de Cn . Daí, λ1 0 D · v1 = λ1 · v1 , ∀v1 ∈ E(λ1 ) 0 .. ⇒ D = β . 0 D · vr = λr · vr , ∀vr ∈ E(λr ) 0 0 0 .. . .. . ... .. . ... λ1 0 ... 0 λ2 .. . ... ... ... .. . .. . 0 Portanto, D é diagonalizável. Que N é nilpotente, já mostramos (imediato do teorema de decomposição em autoespaços generalizados). Note que A|E(λj ) = D|E(λj ) + N |E(λj ) ⇒ A = D + N. Vejamos que vale D · N = N · D. Para tal, basta mostrarmos que, dado v ∈ E(λ), para E(λ) qualquer, vale D ·N ·v = N · D · v. E de fato, neste caso temos: D · N · v = D · N |E(λ) · v = D · (A − λI)|E(λ) · v = | {z } ⊂E(λ) 0 .. . 0 λr Augusto Armando de Castro Júnior 17 D|E(λ) · (A − λI)|E(λ) · v = (λI)|E(λ) · (A − λI)|E(λ) · v = (A − λI)|E(λ) · (λI)|E(λ) · v = N |E(λ) · D|E(λ) · v = N · D · v. Só nos resta agora mostrar que a decomposição acima (A = D+N , com D diagonalizável, N nilpotente e D·N = N ·D) é única. De fato, se D + N = A = N 0 + D0 , como sempre, basta que nos restrinjamos a mostrar que N = N 0 e D = D0 se restritos a um E(λ) fixado arbitrário. Restritos a tal E(λ), temos: λI + (A − λI) = N 0 + D0 ⇒ λI − D0 = N 0 − (A − λI). Note que todos os operadores comutam com A, e, do acima, vemos que comutam entre si. Lembramos que se dois operadores diagonalizáveis comutam, existe uma base de autovetores comum a ambos, isto é, eles são simultaneamente diagonalizáveis (a recíproca também é obviamente válida). Um esboço de prova desse fato é o seguinte: fixado um autoespaço E(λj ) de D, com vj ∈ E(λj ), temos: D ·D0 ·vj = D0 ·D ·vj = D0 ·λj ·vj = λj ·D0 ·vj ⇒ D0 ·vj ∈ E(λj ), ou seja, os autoespaços de D são invariantes por D0 (e viceversa). Tal também implica (permutando os papéis de D e D0 ) que cada autoespaço de D é soma de autoespaços de D0 ou viceversa (está contido em um autoespaço de D0 ). Desse modo, é possível decompor o espaço E em uma soma direta de autoespaços de D ou D0 com a propriedade de que cada subespaço dessa soma não contém propriamente nenhum outro autoespaço de D ou D0 . Em qualquer base obtida reunindo bases dos autoespaços 18 Capítulo 1. Uma visão de Álgebra Linear via Funções de Operadores dessa soma direta, ambos os operadores D, D0 são diagonais. Em particular, temos que D − D0 é diagonalizável, e diagonal naquela base. Seja k a nulidade de N e k 0 a nulidade de N 0 . Considerando que D − D0 = N 0 − N, elevando ambos os membros desta equação a (k + k 0 ), temos, usando o binômio de Newton (veja que N 0 comuta com N |E(λ) ) que o segundo membro é zero. 0 Isto implica que (D − D0 )k+k = 0, o que para um operador diagonalizável implica que (D − D0 ) = 0, isto é, D = D0 , e daí, N = N 0. Corolário 1.7. (Teorema de Cayley-Hamilton). Existe um polinômio p de grau menor ou igual a n tal que p(A) = 0 ∈ L(Cn ). Prova: Tome como polinômio p(x) = (x − λ1 )k1 · · · · · (x − λr ) . Considere então a matriz Z = p(A) = (A − λ1 I)k1 · kr · · · · (A − λr I)kr (lembramos que kj é a nulidade do operador (A − λj )|E(λj ) ). Para mostrar que Z = 0, basta mostrar que Z|E(λ) = 0, com λ = λ1 , . . . , λr . Seja v ∈ E(λ). Daí, como A comuta consigo mesma e com λj I, temos que Z · v = (A − λ1 )k1 · · · · · (A − λ)k(λ) · · · · · (A − λr )kr · v = (A − λ1 )k1 · · · · · (A − λr )kr · (A − λ)k(λ) · v = 0, pois (A − λ)k(λ) · v = 0, para todo v ∈ E(λ). Lema 1.8. (A ser usado no Teorema da forma de Jordan). Seja E um espaço vetorial, dim(E) < +∞ e seja T : E → E um operador linear nilpotente, isto é, existe um primeiro k ∈ N tal que T k ≡ 0. Então existe uma base de E formada por um número finito de sequências (também finitas) linearmente independentes Augusto Armando de Castro Júnior 19 {v1,1 , . . . , v1,j1 }, . . . {vq,1 , . . . , vq,jq } tais que T ·vs,js = vs,js −1 . . . T · vs,1 = 0, com s = 1 . . . q. Prova: Vimos do lema anterior que {0} = Ker(T 0 ) ⊂6 = Ker(T ) ⊂6 = · · · ⊂6 = Ker(T k ) = E. Comecemos nosso algoritmo por E k−1 , um espaço complementar de Ker(T k−1 ) dentro de Ker(T k ) = E. Note que T s (E k−1 ) ∩ Ker(T j ) = {0}, ∀1 ≤ s ≤ k − 1 e ∀0 ≤ j ≤ k − s − 1. Em particular, T i (E k−1 ) é imagem isomorfa de E k−1 . Fixe v1,k−1 . . . vq0 ,k−1 uma base de E k−1 e considere seus iterados T k−s (vr,k−1 ) := vr,s , com k ≥ s ≥ 1 e 1 ≤ r ≤ q 0 , o que já nos dá se não todas, algumas das sequências do enunciado. De fato, para ver que os espaços E k−1 , T · E k−1 , . . . , T k−1 · E k−1 , estão em soma direta, observamos inicialmente que todo vetor não nulo em E k−1 precisa ser iterado exatamente (no mínimo) k vezes por T para ser levado no zero. Isso implica que cada vetor não nulo de T ·E k−1 precisa ser iterado k−1 vezes por T para ser levado no zero, e assim por diante. Vemos deste raciocínio que os espaços considerados têm intesecção dois a dois igual a {0}. Para vermos que estão em soma direta (embora esta soma não perfaça necessariamente o espaço E), seja vs 6= 0 pertencente a um dos espaços acima, digamos vs ∈ T k−s · E k−1 . Daí, T s · vs = 0, e T j (vs ) 6= 0, ∀0 ≤ j < s. Mostremos que vs não pode ser expresso como combinação linear de vetores nos demais espaços, do tipo: X vs = αj vj , vj ∈ T k−j E k−1 , αj não todos nulos. j6=s 20 Capítulo 1. Uma visão de Álgebra Linear via Funções de Operadores Realmente, se pudesse, teríamos, podemos mostrar que todos os αj são nulos. Procedamos pelo princípio da Boa Ordenação. Seja B = {j > s; αj 6= 0}. Mostremos que B é vazio. De fato, suponha que não. Seja r o máximo de B. Daí, 0 = T r−1 vs = X αj T r−1 vj = αr T r−1 vr ⇒ αr = 0; (absurdo). j6=s Assim, todos os αj com j > s são nulos. Por outro lado, daí obtemos que 0 6= T s−1 · vs = X αj T s−1 vj = 0, j<s o que implica que vs não pode ser expresso segundo uma tal combinação de vetores. Agora, tome E k−2 ⊃ T (E k−1 ) um espaço complementar de Ker(T k−2 ) dentro de Ker(T k−1 ). Repetimos o mesmo raciocínio de antes, a E k−2 , descartando as sequências de vetores já contidas nas sequências de E k−1 . Como o espaço tem dimensão finita, em um número finito de passos o lema está provado. Teorema 1.9. (Forma de Jordan- caso complexo.) Seja A : Cn → Cn um operador linear com autovalores complexos distintos λ1 . . . λr , 1 ≤ r ≤ n. Então, existe uma base β de Cn Augusto Armando de Castro Júnior 21 na qual o operador é representado pela matriz λ1 0 ou 1 0 . . . 0 . . . . 0 . ... . .. . λ1 0 ... 0 Aβ = 0 ... 0 λ2 0 ou 1 .. .. 0 . . ... 0 ... 0 λr 0 ... 0 0 .. . 0 0 ou 1 λr Prova: Aplicamos o último lema a (A − λk · I)|E(λk ) . Pelo lema, existe uma base βk de E(λk ) em que (A − λk · I)|E(λk ) é representada pela matriz 0 0 ou 1 0 0 0 ... 0 ... 0 .. ... 0 . 0 0 ... 0 ou 1 0 Note que nessa base, como em qualquer outra base, (λk · I)|E(λk ) se escreve como: λk 0 . . . 0 .. . 0 0 0 . . . 0 λk Como A|E(λk ) = (λk · I)|E(λk ) + (A − λk · I)|E(λk ) segue-se que A|E(λk ) se escreve na base βk como: λk 0 ou 1 0 ... 0 .. 0 . 0 ... λk .. . 0 ou 1 ... 0 0 ... λk 22 Capítulo 1. Uma visão de Álgebra Linear via Funções de Operadores Tomando a base ordenada β formada pelos vetores em β1 , . . . , βr , da invariância de cada E(λk ) obtemos que o operador A na base β se escreve como: λ1 0 ou 1 λ1 0 0 ... 0 ... Aβ = 0 ... .. . 0 ... 0 .. ... 0 . 0 ... .. . 0 ou 1 λ1 ... 0 .. . 0 λr 0 ou 1 0 λr 0 .. . 0 ... .. 0 ... . 0 .. . 0 ... 0 0 ... 0 ou 1 λr Definição 1.10. (Complexificado de um operador real.) Considere um operador linear A : Rn → Rn , Cn = Rn ⊕ Rn = (Rn )1 ⊕ (Rn )2 , onde (Rn )1 := (Rn , 0) e (Rn )2 := (0, Rn ). Se v = (v1 , v2 ) ∈ Rn ⊕ Rn , então definimos o complexificado à : Cn → Cn o operador estendendo A dado por à · v := (A · v1 , A · v2 ) = A · v1 + iA · v2 . Definição 1.11. (A aplicação conjugação : Cn → Cn ). Dado v ∈ Cn = Rn ⊕ Rn , v = (v1 , v2 ), a aplicação conjugação Cn → Cn é o isomorfismo linear dado por v = (v1 , v2 ) := (v1 , −v2 ). : Augusto Armando de Castro Júnior 23 Proposição 1.12. Seja A : Rn → Rn um operador linear real. Então o complexificado à de A comuta com a aplicação de conjugação, isto é, à · v = à · v, ∀v ∈ Cn . Prova: A prova é direta: à · v = (A · v1 , −A · v2 ) = (A · v1 , A · −v2 ) = à · v. Teorema 1.13. (Forma de Jordan- caso real.) Seja A : Rn → Rn um operador linear com autovalores reais λ1 . . . λr e autovalores complexos não reais a1 + ib1 , . . . as + ibs . Então, existe uma base β de Rn na qual o operador é representado pela matriz em blocos na diagonal J1 0 Aβ = . .. 0 .. ... . 0 Jr J˜1 0 .. . 0 .. . , 0 ˜ Js onde cada Jk , 1 ≤ k ≤ r é da forma: λk 0 0 0 0 ou 1 0 λk .. . .. . ... ... ... 0 0 ... , 0 ou 1 λk 24 Capítulo 1. Uma visão de Álgebra Linear via Funções de Operadores e cada J˜l , 1 ≤ l ≤ s é da forma: al bl c1 0 −bl al 0 c1 .. . 0 .. .. . . 0 0 ... 0 0 ... .. . cd 0 al −bl 0 0 0, cd bl al onde cada ce = 1 ou ce = 0, e = 1 . . . d. Prova: Note que identificamos A com Ã|(Rn )1 . Dividiremos a prova em vários passos, por razões didáticas: 1. Como à provem de um operador real, se λ é autovalor de Ã, o mesmo vale para λ, e se v é autovetor correspondente a λ, v é autovetor associado a λ. De fato, como à é o complexificado de um operador real, a decomposição Cn = (Rn )1 ⊕ (Rn )2 é invariante por Ã, isto é, Ã|(Rn )1 · (Rn )1 ⊂ (Rn )1 e Ã|(Rn )2 · (Rn )2 ⊂ (Rn )2 . Daí, à · v = λ · v = λ · v ⇒ à · v = λ · v. 2. Como A é operador real, se λ é um autovalor qualquer de Ã, então E(λ) ⊃ à · E(λ) = à · E(λ), o que implica que E(λ) é deixado invariante por Ã. Ademais, (à − λ)kj (E(λ)) = 0 ⇔ (à − λ)kλ (E(λ)) = 0 ⇔ (à − λ)kλ (E(λ)) = 0. Isso significa que (Ã−λ)|E(λ) e (Ã−λ)|E(λ) são operadores nilpotentes de mesma nulidade. Daí, λ é o único autovalor Augusto Armando de Castro Júnior 25 de à em E(λ). Além do mais, lembramos que E(λ) = Ker((à − λ)dλ ⊃ Ker((à − λ)kλ ), conforme o lema 1.5. Em particular, E(λ) ⊂ E(λ). Trocando λ com λ, obtemos que E(λ) ⊂ E(λ), donde tiramos, já que a conjugação é um isomorfismo (sesquilinear), que dim(E(λ)) = dim(E(λ)) e que E(λ) = E(λ). 3. Como já observamos, Ã|(Rn )1 é (identificado com) nosso A original. Note que se λj é um autovalor real, do item anterior temos E(λj ) = E(λj ) = E(λj ). Tal implica que tomando w1 , . . . , wdj uma base de E(λj ) e a base formada pelos conjugados w1 , . . . , wdj então as partes reais (w1 + w1 )/2, . . . , (wdj +wdj )/2 e imaginárias (w1 −w1 )/2i, . . . , (wdj − wdj )/2i pertencem a E(λj ). Ademais, tais vetores (que são reais) geram E(λj ) enquanto espaço complexo, já que por exemplo, geram w1 , . . . , wdj . Em particular, do conjunto dessas partes reais e imaginárias, podemos extrair uma base de vetores reais de E(λj ). Os vetores desta base são linearmente independentes sobre C, o que quer dizer que são linearmente independentes enquanto vetores reais, sobre R. Isso significa que esses vetores são uma base do espaço real E(λj ) ∩ (Rn )1 , já que tal espaço tem como dimensão real máxima igual à dimensão complexa de E(λj ). Pelo teorema da decomposição em autoespaços generalizados, Ã|E(λj ) = λj · I|E(λj ) + (à − λj · I)|E(λj ) . Note que tais parcelas deixam invariante (Rn )1 , pois λj ∈ R. Como (à − λj · I)|E(λj ) é nilpotente, e deixa E(λj ) ∩ (Rn )1 invariante, podemos aplicar à mesma o lema 1.8, obtendo uma base de vetores (reais) na qual (à − λj · I)|E(λj )∩(Rn )1 se 26 Capítulo 1. Uma visão de Álgebra Linear via Funções de Operadores escreve como 0 0 0 0 0 ou 1 .. 0 .. . . ... ... 0 .. . 0 ou 1 0 Definindo E := ⊕rj=1 E(λj ), e justapondo as bases de vetores reais encontradas acima para diferentes valores de j, em uma base γ de do espaço E ∩ (Rn )1 , seguindo a prova do teorema da forma de Jordan, versão complexa, temos que: λ1 0 0 (A|E∩(Rn )1 )γ = .. . 0 0 0 ou 1 .. . .. . 0 ... 0 ou 1 0 λ1 0 .. . .. . ... ... ... .. 0 .. . . .. λr . 0 0 ou 1 .. . ... 0 .. . 0 0 ou λr 4. No caso dos autoespaços generalizados de autovalores complexos com parte imaginária não nula, a situação é uma pouco diversa. Comecemos por fixar um autovalor λ complexo (e com parte imaginária não nula) de Ã. Observamos que nesse caso, dim(E(λ) ∩ (Rn )1 ) = 0. De fato, nesse caso λ 6= λ, e como vimos E(λ) = E(λ). Logo E(λ) ∩ E(λ) = {0} ⇒ E(λ) ∩ E(λ) = {0}, o que significa que E(λ) (assim como E(λ)) não possui vetores reais. 1 Augusto Armando de Castro Júnior 27 5. Por outro lado, o espaço Ê = E(λ) ⊕ E(λ) possui uma intersecção não trivial com (Rn )1 . De fato, dado um vetor v = (v1 , v2 ) = v1 + i · v2 ∈ E(λ) sua parte real v1 pertence a Ê, bem como sua parte imaginária v2 : v1 = (v + v)/2 ; v2 = (v − v)/(2 · i), o que em outras palavras quer dizer que (v1 , 0) ∈ Ê ∩(Rn )1 e que também (v2 , 0) ∈ Ê ∩ (Rn )1 . 6. Observe que se w1 , . . . , wdλ constituem uma base que deixa Ã|E(λ) na forma de Jordan (complexa), o mesmo pode ser dito de w1 , . . . , wdλ com respeito a ÃE(λ) . Dado v ∈ Ê, designemos sua parte real por v 0 e sua parte imaginária por v 00 que, como vimos acima, pertencem também a Ê∩(Rn )1 . Portanto, dada a base η de Ê dada por w1 , . . . , wdλ , w1 , . . . , wdλ os vetores w10 , w100 , . . . , wd0 λ , wd00λ constituem uma base γλ de Ê como espaço complexo, bem como de Ê ∩ (Rn )1 , como espaço sobre R. De fato, para ver isso, basta observar que o conjunto {w10 , w100 , . . . , wd0 λ , wd00λ } gera a base η acima, e tem a cardinalidade da dimensão (complexa) de Ê, logo tais vetores são linearmente independentes (olhando-os como vetores complexos). Ou seja, tais vetores constituem uma base do espaço complexo Ê. Mas se são linearmente independentes sobre o corpo dos complexos, (sendo também vetores reais), também o são sobre o corpo dos reais. Como a dimensão real de Ê ∩ Rn é (no máximo) 2 · dλ , isso implica a afirmação de que {w10 , w100 , . . . , wd0 λ , wd00λ } são uma base de Ê ∩ (Rn )1 , como espaço real. 7. Agora só falta mostrar que na base γλ Ã|Ê∩(Rn )1 tem a forma de Jλ do enunciado. Isto é obtido por cálculo direto, 28 Capítulo 1. Uma visão de Álgebra Linear via Funções de Operadores pois sabemos qual a representação de à na base η de Ê e como ela se relaciona com a base (como espaço sobre R) γλ . Realmente, temos que λ c1 . 0 . . . . (Ã|Ê )η = . . . . 0 ... 0 .. . ... λ 0 λ c1 .. . 0 0 .. . , 0 .. . λ onde c1 , . . . , cdλ −1 são constantes que podem ser igual a zero ou 1. A j−ésima coluna (1 ≤ j ≤ dλ ) acima é a representação de Ã|Ê · wj na base η. Do mesmo modo, a (dλ +j)- ésima coluna (1 ≤ j ≤ dλ ) acima é a representação de Ã|Ê · wj na base η. Temos, por exemplo, que: à · w10 à · w1 + Ãw1 λ · w1 + λ · w1 = = 2 2 (escrevendo λ = a + bi) (a + bi) · (w10 + i · w100 ) + (a − bi) · (w10 − i · w100 ) = a·w10 −b·w100 . 2 Similarmente, calculamos que à · w100 = b · w10 + a · w100 . Só com essas contas, já obtivemos que (Ã|Ê∩(Rn )1 )γλ a −b = 0 .. . b ? a ? 0 .. . ? ? ... . Augusto Armando de Castro Júnior 29 Temos, atuando à em w20 e w200 : ÷w20 = à · w2 + à · w2 c1 · w1 + λ · w2 + c1 · w1 + λw2 = = 2 2 c1 · w10 + a · w20 − b · w200 ; ÷w200 = à · w2 − à · w2 c1 · w1 + λ · w2 − c1 · w1 − λw2 = = 2i 2i c1 · w100 + b · w20 + a · w200 . Tais computações já nos dão a forma: (Ã|Ê∩(Rn )1 )γλ a b c1 0 ? ... −b =0 . . . 0 a 0 c1 ? 0 .. . a b ? −b a ? . 0 0 0 ? Prosseguindo nessas mesmas contas, obtemos a forma desejada, justapondo as (sub)bases γ e as diversas γλ de modo a obter uma base de (Rn )1 . Observação 1.14. Quando tratarmos de operadores reais, designaremos por E(λ) o autoespaço generalizado real associado a λ, se λ for real. Caso contrário, abusando um pouco da notação, designaremos por E(λ) a soma dos espaços complexos associados a λ e λ, intersectada com (Rn )1 ' Rn . 30 Capítulo 1. Uma visão de Álgebra Linear via Funções de Operadores 1.1 Avaliando polinômios em matrizes Considere uma matriz quadrada Jλ de dimensão dλ · dλ da forma λ 1 0 0 . Jλ := .. 0 .. . .. . . .. . ... .. . .. . ... 0 λ .. 0 ... 0 0 .. . 0 1 λ Considere um polinômio qualquer da forma f (x) = Pk n=0 Que matriz obtemos se avaliarmos esse polinômio na matriz Jλ ? Afirmamos que obtemos a matriz f (Jλ ) = f (λ) Df (λ) 0 .. . .. . .. . f (λ) 0 ... D 2 f (λ) 2 Df (λ) .. . D 3 f (λ) 3! ... D 2 f (λ) 2 ... .. . .. . ... .. . .. . 0 D d−1 f (λ) (d−1)! .. . .. . .. . . Df (λ) f (λ) De fato, denotando por N a parte nilpotente da matriz Jλ , do binômio de Newton temos que n (λI + N ) = { n X n p=0 p (λn−p IN p )}. an xn . 1.1. Avaliando polinômios em matrizes 31 Como a matriz 0 . .. Np = 0 ...1 0 0 .. 0 .. . , 1 ... .. . . ... 0 com a p−ésima diagonal acima da diagonal principal formada de 1’s, e o restante das entradas da matriz zerada, temos que λn 0 . n . X n . n−p p { (λ IN )} = .. p p=0 . . . . Como f (Jλ ) = nλn−1 D 2 f (λ) 2 D 3 f (λ) 3! f (λ) nλn−1 .. . D 2 f (λ) 2 0 ... ... Pk Pn n=0 p=0 an n p .. . .. . ... ... D d−1 f (λ) (d−1)! .. . .. . .. . .. . .. . nλn−1 0 λn (λn−p IN p ), segue-se a interessante afirmação. Agora, suponha que temos uma matriz na forma de Jordan, digamos Jλ1 0 J = . . . 0 0 Jλ2 .. . ... .. . .. . ... 0 0 .. . , 0 Jλs onde cada Jλj é uma submatriz quadrada da forma λj I + Nj , com Nj uma matriz nilpotente, com 1’s ou 0’s na diagonal imediatamente acima da principal. . 32 Capítulo 1. Uma visão de Álgebra Linear via Funções de Operadores Claro está que a projeção sobre o autoespaço generalizado associado ao autovalor λ1 é simplesmente ! Id1 0 Πλ1 = , 0 0 onde Id1 é uma submatriz tipo identidade de mesma dimensão d1 × d1 que Jλ1 . Supondo que sejamos masoquistas, como podemos obter Πλ1 a partir de um polinômio f avaliado em J? Ora, basta encontrarmos um polinômio que se anule em λ2 , . . . , λs , que seja 1 em λ1 e cujas derivadas de ordem, digamos, até max{dj , j = 1, . . . , s}, se anulem em λ1 , . . . , λs . Do que vimos mais acima, tal implicará que f (J) = Id1 0 0 0 ! . E se A fosse uma matriz qualquer? Ah, agora vem a parte em que deixamos de ser masoquistas, pois a projeção sobre um determinado autoespaço generalizado não é trivialmente dada. Ora, sabemos que a matriz A é equivalente a uma matriz de Jordan, ou seja, existe uma matriz invertível P tal que A = P JP −1 . Mas aí, f (A) = P f (J)P −1 é tal que f 2 (A) = P (f (J))2 P −1 = P f (J)P −1 , o que implica que f (A) é uma projeção. Ademais, da conjugação vemos ainda que f (A) zera exatamente nos autoespaços generalizados não associados a λ1 , e é a identidade em E(λ1 ). Para ver isso, observe primeiro que da comutatividade entre A e f (A) segue-se que f (A)(E) := E1 é um espaço A−invariante: A(E1 ) = A(f (A)(E)) = f (A)(A(E)) ⊂ f (A)(E) = E1 . 1.2. Exercícios 33 Ademais, vê-se que E1 = f (A)E está contido no ker((A−λ1 I)d1 ): (A − λ1 )d1 f (A)(E) = (Af (A) − λ1 f (A))d1 (E) = (P JP −1 P f (J)P −1 − λ1 P f (J)P −1 )d1 (E) = 1 (P (Jf (J) − λ1 f (J))P −1 )d (E) = P (Jf (J) − λ1 f (J))d1 P −1 (E) = P (Jf (J) − λ1 f (J))d1 (E) = 0 Usando de estimativa análoga para a soma dos demais subespaços de A, concluímos por argumento de dimensão que E1 = ker((A − λ1 I)d1 ) = E(λ1 ). 1.2 Exercícios 1. Seja p(x) = a0 + a1 x + · · · + an−1 xn−1 + xn um polinômio mônico de grau n Seja A a matriz companheira de p, isto é, a matriz 0 1 A := 0 . . . 0 ... 0 .. . −a0 .. . .. . .. .. . 1 0 −an−2 ... 0 1 −an−1 . −a1 .. . cujo polinômio característico (façam as contas!) é p. Se n ≥ 2 e p possui uma única raiz λ1 com multiplicidade n, qual é a forma de Jordan de A? 2. Sejam λ1 e λ2 dois números complexos. Encontre um polinômio que seja 1 em λ1 , seja 0 em λ2 , e sua primeira 34 Capítulo 1. Uma visão de Álgebra Linear via Funções de Operadores derivada se anule em λ1 e λ2 . E se pedirmos que todas as suas derivadas até uma certa ordem k ≥ 1 se anulassem em λ1 e λ2 ? 3. Seja A a matriz dada por 3 A := 0 1 0 0 3 1 1 . 1 Encontre um polinômio que, avaliado em A, retorne a projeção com respeito ao autoespaço associado ao autovalor 3. 35 2 Funções Analíticas Vimos no capítulo anterior que avaliando polinômios em matrizes, podemos calcular suas projeções com respeito a cada autoespaço generalizado. Notamos que os polinômios usados para esse fim não eram únicos: qualquer polinômio que fosse 1 no autovalor λ cujo autoespaço (generalizado) quiséssemos calcular e zerasse suas derivadas no mínimo até certa ordem em todos os autovalores, além de zerar nos demais autovalores, serviria para calcular o autoespaço generalizado E(λ). Isso sugere que se conseguíssemos avaliar um operador em funções mais complicadas, que fossem 1 em uma vizinhança de λ e zero em uma vizinhança dos demais autovalores, tal avaliação geraria a mesma projeção sobre E(λ) que os polinômios de que falamos. O problema é: como fazer uma tal avaliação? Para vermos como, precisamos estudar uma classe maior de funções que a dos polinômios, a saber, a chamada coleção das funções analíticas. E o que são funções analíticas? Grosso modo, são funções com domínio em algum aberto de C que localmente são dadas por sua série de Taylor, que é uma série cujas somas reduzidas são polinômios. Exemplos bem conhecidos de funções analíticas, além dos polinômios, são a exponencial, o logaritmo e as funções racionais (quocientes de polinômios). As funções trigonométricas (ex.: seno, cosseno) são compostas de polinômios com a exponencial, ou quociente de tais compostas. Observamos que no caso da exponencial, a função consegue ser calculada glo- 36 Capítulo 2. Funções Analíticas balmente por sua série de Taylor (a qual converge em todo o plano complexo), funcionando na prática como se fosse um polinômio de grau infinito. Nesse caso, veremos que poderíamos avaliar a exponencial em qualquer matriz, sem problemas, substituindo na série como se o faríamos se tivéssemos um polinômio. Todavia, este está longe de ser o caso geral. Em geral, o fato da convergência ser só local, nos impede de avaliar uma função desse tipo numa matriz dada (a série obtida pode não convergir). Contudo, as funções analíticas possuem uma outra representação, esta semiglobal, a fórmula Integral de Cauchy, na qual faz sentido substituir uma matriz. Será ela que utilizaremos para definir nosso homomorfismo de avaliação em espaços de operadores lineares. A Fórmula Integral de Cauchy é parte fundamental da chamada Teoria de Cauchy-Goursat de aplicações holomorfas. Em princípio, uma aplicação f definida em um aberto U de C é holomorfa, se seus quocientes de Newton (f (z) − f (z0 ))/(z − z0 ) em cada ponto z0 de U , avaliados com o produto em C convergem a um limite, quando z → z0 , chamado de derivada holomorfa em z0 . A Teoria de Cauchy-Goursat tem em sua base a seguinte questão: quando uma aplicação holomorfa em cada ponto de um aberto é a derivada de alguém? Essa é uma pergunta clássica, que segue o sabor do Teorema Fundamental do Cálculo e de fato o traz no âmago de sua solução. Adiantamos que toda aplicação holomorfa é a derivada holomorfa de alguém. Claro, uma vez que uma aplicação seja a derivada de uma outra, é fácil recuperar esta última (a partir de sua derivada) aplicando o Teorema Fundamental do Cálculo a sua restrição a caminhos. Veremos que ainda mais interessante, é o que ocorre quando a 2.1. Sequências e séries em Espaços de Banach 37 aplicação falha em ser derivada de outra. De fato, tal estudo nos conduzirá à Fórmula Integral de Cauchy de que já falamos, e ainda a descoberta que toda aplicação holomorfa é analítica. Apresentaremos ainda o espaço de Banach das Aplicações lineares Contínuas e suas propriedades, alvo principal do nosso curso. Nas duas últimas seções do capítulo introduziremos a noção de Integração de caminhos tomando valores em espaços de Banach, além de generalizarmos a teoria de Cauchy-Goursat para o contexto destes espaços. Abaixo, damos definições mais precisas desses objetos. Em vez de considerarmos funções analíticas tomando valores também em C, desenvolveremos os conceitos num contexto um pouco mais geral, deixando o domínio em C mas tomando valores em um espaço de Banach complexo. 2.1 Sequências e séries em Espaços de Banach Definição 2.1. (Métrica e espaço métrico.) Uma métrica em um conjunto X é uma função d : X × X → [0, +∞) tal que, dados quaisquer x, y, z ∈ X, valem: d1) d(x, y) = 0 ⇔ x = y. d2) d(x, y) = d(y, x). d3) d(x, z) ≤ d(x, y) + d(y, z) (desigualdade triangular). O par ordenado (X, d) é chamado de espaço métrico. Em geral, por um abuso de linguagem, diz-se que X é um espaço métrico, subentendendo-se uma métrica d a ele associada. 38 Capítulo 2. Funções Analíticas Definição 2.2. (Bola aberta e conjunto aberto de um espaço métrico.) Seja (X, d) um espaço métrico. Dado x ∈ X e r ∈ R+ quaisquer definimos a bola aberta centrada em x e de raio r como o conjunto B(x, r) := {y ∈ X; d(x, y) < r}. Dizemos que A ⊂ X é um conjunto aberto de X se A pode ser escrito como união qualquer de bolas abertas de X. Dizemos que um conjunto F ⊂ X é fechado em X se F c := X \ F é aberto. Definição 2.3. (Norma.) Seja (E, +, ., R) um espaço vetorial real ou complexo. Uma norma em E é uma aplicação k · k : E → [0, +∞) tal que: n1) kvk = 0 ⇔ v = 0; n2) kλvk = |λ| · kvk; ∀λ ∈ R, ∀v ∈ E. n3) kv + wk ≤ kvk + kwk; ∀v, w ∈ E (desigualdade triangular). O exemplo mais comum de espaço métrico é dado pelos espaços vetoriais normados. Se E é um tal espaço, dotado de uma norma k · k, então a aplicação d : E × E → [0, +∞) dada por d(v, w) := kv − wk, ∀v ∈ E, w ∈ E; define uma métrica em E. Outra classe importante de exemplos de espaços métricos é dada quando tomamos um subconjunto Y ⊂ X de um espaço métrico (X, d). Nesse caso, a restrição d|Y ×Y define uma métrica em Y . Augusto Armando de Castro Júnior 39 Definição 2.4. (Sequência e subsequência.) Seja X um conjunto qualquer. Uma sequência em X é uma aplicação x : N → X. Denota-se xj := x(j) e (xj ) := x. Dada uma sequência (xj ) : N → X, uma subsequência (xjk ) de (xj ) é qualquer restrição de (xj ) a um subconjunto infinito N̂ ⊂ N, N̂ = {j1 , j2 , . . . , com j1 < j2 < . . . }. Definição 2.5. (Sequência convergente.) Uma sequência (xj ) em um espaço métrico (Y, d) é dita convergente para y ∈ Y se para toda bola aberta B tal que y ∈ B, tem-se um número finito de índices j tais que xj ∈ / B. Escrevemos xj → y para denotar que a sequência (xj ) converge a y ∈ Y . Dizemos que uma subsequência (xjk ) é convergente se a sequência (yk ) : N → Y definida por yk := xjk , ∀k ∈ N for convergente. Note que provarmos via definição que uma sequência (xj ) é convergente a y ∈ Y envolve várias dificuldades: a primeira, é que precisamos exibir o candidato a limite, isto é o ponto y ∈ Y para o qual a sequência converge. Mesmo que uma deidade nos apresente esse candidato a limite, comparar os termos xj com y pode não ser fácil, vez que frequentemente os xj são dados por meio de alguma fórmula indutiva. Essa dificuldade nos leva a fazer uma definição, digamos, a meio caminho. Definição 2.6. (Sequência de Cauchy.) Seja (Y, d) um espaço métrico. Uma sequência (yn ), com yn ∈ Y, ∀n ∈ N é dita sequência de Cauchy se dado um real > 0, existe n0 ∈ N tal que para todos m, j ∈ N, com m ≥ n0 e j ≥ n0 temos d(ym , yj ) ≤ . Toda sequência convergente a um ponto é de Cauchy. Por outro lado, toda sequência de Cauchy com subsequência convergente a um ponto converge a esse mesmo ponto. Tais fatos são 40 Capítulo 2. Funções Analíticas deixados ao leitor como exercícios (ex. 6 e 7). Note que provar que uma sequência é de Cauchy é muito mais fácil que provála convergente, pois não precisamos conhecer a priori o limite, e precisamos para tal comparar os termos da sequência entre si, e estes são dados, muitas vezes, por fórmulas indutivas que favorecem sua comparação. Definição 2.7. (Série.) Seja (vn ) : N → E uma sequência tomando valores em um espaço vetorial normado E. A série gerada P por (vn ), denotada por vn , é a sequência (sn ) definida por: sn := n X vj . j=1 Tal sn é chamada de soma reduzida ou, simplesmente, reduzida. P A série vn é portanto, a sequência das reduzidas. Observação 2.8. (Critério de Cauchy para Séries.) Se uma P série vn é de Cauchy, então temos que dado > 0, existe n0 ∈ N tal que vale: k m X vj − j=1 n X vj k = k j=1 Proposição 2.9. Seja m X vj k < , ∀m ≥ n ≥ n0 . j=n+1 P vn uma série de Cauchy, com vn ∈ E, E um espaço vetorial normado. Então vn → 0 quando n → +∞. Prova: Definição 2.10. (Série absolutamente convergente.) Uma série P vn : N → E, tomando valores em um espaço vetorial normado P (E, k · k) é dita absolutamente convergente se a série kvn k : N → [0, +∞) converge na reta. Augusto Armando de Castro Júnior 41 P Observação 2.11. Note que uma série vn é absolutamente P convergente se. e só se, a série kvn k é limitada (acotada). De P fato, as somas reduzidas de kvn k constituem uma sequência monótona na reta, que sendo acotada, possui limite. Por outro P lado, se a série kvn k possui limite, como qualquer sequência que o possua, é acotada. Proposição 2.12. Toda série absolutamente convergente P vn tomando valores em um espaço vetorial normado E é de Cauchy. Prova: Seja > 0 dada. Como a série P kvn k converge, em particular, é de Cauchy. Logo, existe n0 ∈ N tal que, ∀m ≥ n ≥ n0 temos: | m X kvj k − j=1 n X kvj k| = j=1 m X kvj k < . j=n+1 Da desigualdade triangular, temos k m X j=1 vj − n X vj k ≤ j=1 donde concluímos que m X kvj k < , ∀m ≥ n ≥ n0 , j=n+1 P vn é de Cauchy. Corolário 2.13. Um espaço vetorial (E, k · k) é completo se e só se toda série absolutamente convergente é convergente. Prova: (⇒) Se P vn é absolutamente convergente, vi- mos acima que é uma sequência de Cauchy. Logo, se (E, k · k) é P completo, vn é convergente em E. (⇐) Agora suponha que toda série absolutamente convergente converge em E. Seja wn uma sequência de Cauchy em 42 Capítulo 2. Funções Analíticas E. Para cada j ∈ N, dado j = 1/2j , tome então uma sequência estritamente crescente (nj ) : N → N tal que ∀m, n ≥ nj ⇒ kwm − wn k < j . Em particular, concluímos que kwnj+1 − wnj k < j = 1/2j , ∀j ∈ N. Definindo vj := wnj+1 − wnj , concluímos que k X kvj k < j=1 k X 1/2j < 1, ∀k ∈ N, j=1 P kvj k é limitada, e pela observação 2.11, é absolutaP mente convergente. Por hipótese, isto implica que a série vj ou seja, converge em E. Mas seu limite é: E 3 lim k→+∞ k X wnj+1 − wnj = lim (wnk+1 − wn1 ) = k→+∞ j=1 ( lim wnk+1 ) − wn1 , k→+∞ o que implica que wn possui uma subsequência convergente em E, a saber, (wnj+1 ). Como (wn ) é de Cauchy, isso implica que (wn ) converge em E. Proposição 2.14. (Critério de Comparação.) Seja (E, k · k) P P um espaço vetorial normado e sejam vn e wn duas séries P com valores em E, sendo wn absolutamente convergente. Se P existe n0 ∈ N tal que kvn k ≤ kwn k, ∀n ≥ n0 , então vn é absolutamente convergente. Augusto Armando de Castro Júnior 43 Prova: Seja > 0 dado, e tome n1 ∈ N, n1 ≥ n0 , tal que | n X kwj k − m X kwj k < /2, ∀m ≥ n ≥ n1 . j=n+1 j=0 j=0 m X kwj k| = Como kvn k ≤ kwn k, ∀n ≥ n0 , temos que | n X kvj k− m X kvj k ≤ j=n+1 j=0 j=0 m X kvj k| = m X kwj k < /2, ∀m ≥ n ≥ n1 . j=n+1 P kvn k é de Cauchy na reta, logo convergente P em R. Por definição, vn é absolutamente convergente. Portanto Observação 2.15. Notamos na prova acima, que dado > 0, e fazendo m → +∞, | n X j=0 kvj k − +∞ X kvj k| ≤ /2 < , ∀n ≥ n1 . j=0 Ou seja, dado > 0, o mesmo n1 ∈ N, n1 ≥ n0 da P P convergência de kwn k vale para kvn k, desde que kvn k ≤ kwn k, ∀n ≥ n0 . Corolário 2.16. (Teste da raiz.) Seja (E, k · k) um espaço veP torial normado e seja vn : N → E uma série tal que p lim sup n kvn k < 1. n→+∞ Então P vn é absolutamente convergente. Prova: Seja α = lim supn→+∞ α + 0 < 1 p n kvn k e 0 > 0 tal que 44 Capítulo 2. Funções Analíticas Daí, existe n0 tal que p n kvn k < α + 0 , ∀n ≥ n0 ⇒ kvn k < (α + 0 )n , ∀n ≥ n0 . Portanto, existe n0 ∈ N tal que o termo kvn k é acotado pelo termo da progressão geométrica (convergente) de razão (α+ 0 ) < 1. Da proposição acima, segue-se o resultado. Corolário 2.17. (Teste da razão.) Seja (E, k · k) um espaço P vetorial normado e seja vn : N → E uma série. Se existe n0 ∈ N tal que kvn k 6= 0, ∀n ≥ n0 , e tomando n ≥ n0 vaP k < 1, então vn é absolutamente lha que lim supn→+∞ kvkvn+1 nk convergente. Prova: P+∞ Proposição 2.18. Seja f (z) := n=0 an (z − z0 )n uma série de P P potências. Se an (z1 − z0 )n é limitada, então a série an (z − z0 )n converge, ∀z ∈ B(z0 , |z1 − z0 |). Prova: Definição 2.19. (Aplicação analítica.) Seja U ⊂ C um aberto e E um espaço vetorial normado complexo. Uma função f : U → E é dita analítica se para cada z0 ∈ U , existe uma série de P potências n an (z − z0 )n com raio de convergência Rz0 > 0 tal P+∞ que f (z) = n=0 an (z − z0 )n , ∀z ∈ B(z0 , Rz0 ). Augusto Armando de Castro Júnior 45 Proposição 2.20. Seja E um espaço vetorial normado completo e f : B(z0 , R) → E uma série de potências, isto é, f (z) = P+∞ n n=0 an (z − z0 ) , ∀z ∈ B(z0 , R), R > 0. Então f é analítica. Prova: Seja w0 ∈ B(z0 , R). Precisamos mostrar que f se escreve localmente como uma série de potências em torno de w0 . Para isso, tomemos r < R − |z0 |, e provemos que existe uma tal série convergindo uniformemente em B(w0 , r). Vejamos: f (z) = +∞ X an (z − z0 )n = n=0 +∞ X an (z − w0 + w0 − z0 )n = n=0 +∞ X n=0 an n X n j=0 j (w0 − z0 )n−j (z − w0 )j . Note que a série acima é absolutamente e uniformemente contínua, pois |an |(|z − w0 | + |w0 − z0 |)n ≤ |an |rn , ∀n ∈ N. Assim qualquer reenumeração da sequência que gera a série n X X an (w0 − z0 )n−j (z − w0 )j j n 0≤j≤n converge a um mesmo limite. Em particular, f (z) = +∞ +∞ X +∞ n X X ( an (w0 − z0 )n−j )(z−w0 )j =: bj (z−w0 )j , j j=0 j=0 n=j {z } | :=bj com a série acima convergindo uniformemente para z ∈ B(z0 , r). 46 Capítulo 2. Funções Analíticas Definição 2.21. Seja E um espaço vetorial normado. Uma sequência dupla tomando valores em E é uma aplicação (cn,k ) : N × N → E. A série dupla gerada por (cn,k ) é a sequência dupla P (sn,k ) (denotada por n,k cn,k ) definida por: k n X X sn,k := cm,j . m=0 j=0 Finalmente, a série dupla P n,k cn,k converge a s ∈ E se existe o limite n X k X lim n→+∞,k→+∞ cm,j . m=0 j=0 P an e bk duas Pq Pn séries absolutamente convergentes. Seja dq := n=0 j=0 aj ∗ P bn−j . Então a série dupla n,k an ∗ bk é absolutamente conver- Proposição 2.22. (Produto de séries.) Sejam P gente e vale k n X X lim n→+∞,k→+∞ am ∗ bj = lim dq . q→+∞ m=0 j=0 Prova: Note que a série dupla P n,k an · bk é absoluta- mente convergente, pois n X k X |am ∗bj | = m=0 j=0 n X m=0 k +∞ +∞ X X X |am |∗ |bj | ≤ |am |∗ |bj | < +∞, ∀n, k ∈ N. j=0 m=0 j=0 P dn é uma série absolutamente P convergente. Para vermos isso, basta verificarmos que |dn | é Daí, concluímos que limitada. De fato, n X q=0 |dq | ≤ q n X X q=0 j=0 |aj ||bn−j | ≤ n X n X m=0 j=0 |am ∗bj | ≤ +∞ X m=0 +∞ X |am |∗ |bj | < +∞. j=0 Augusto Armando de Castro Júnior 47 P Mostremos portanto que o limite de dq é o mesmo que o de P n,k an ∗ bk . Seja > 0 dado e seja n0 ∈ N tal que ∀n ≥ n0 e ∀k ≥ n0 , tenhamos | n X k X |am ∗ bj | − m=0 j=0 n0 X n0 X |am ∗ bj || < /2, ∀n ∈ N m=0 j=0 Seja então n1 = 2n0 . Daí, dado qualquer (m, j) ∈ {0, . . . , n0 } × {0, . . . , n0 }, temos que a parcela am ∗ bj é parcela da soma Pq Pn n=0 j=0 aj ∗ bn−j , ∀q ≥ n1 . Assim sendo, k q X n X n=0 j=0 aj ∗ bn−j − n0 X n0 X m=0 j=0 n0 X n0 X am ∗ bj k ≤ | q X q X |am ∗ bj |− m=0 j=0 |am ∗ bj || < /2, ∀q ≥ n1 , m=0 j=0 donde concluímos por argumento de desigualdade triangular o resultado. ˜ Definição 2.23. (Aplicação contínua.) Sejam (X, d) e (X̃, d) dois espaços métricos. Uma aplicação f : X → X̃ é dita contínua no ponto x ∈ X se dado > 0 existe δ > 0 tal que ˜ (x), f (y)) < . y ∈ X, d(x, y) < δ ⇒ d(f A aplicação f : X → X̂ é dita contínua se é contínua ∀x ∈ X. Observação 2.24. É imediato da definição acima que uma aplicação f : X → X̂ é contínua, se e só se, a pré-imagem de qualquer aberto de X̂ é sempre um subconjunto aberto de X. 48 Capítulo 2. Funções Analíticas Observação 2.25. Ainda em contextos métricos, é possível provar que uma aplicação f : X → X̂ é contínua em x ∈ X se e só se f é sequencialmente contínua em x ∈ X. Por definição, f é dita sequencialmente contínua em x ∈ X se dada uma sequência (xn ), xn ∈ X tal que xn → x quando n → +∞ então a sequência (f (xn )) converge a f (x). Definição 2.26. (Espaço métrico completo.) Um espaço métrico (X, d) é dito completo se toda sequência de Cauchy (xn ), com xn ∈ X, converge para um ponto x ∈ X. Definição 2.27. (Espaço de Banach.) Um espaço vetorial normado cuja métrica oriunda da norma é completa é chamado de espaço de Banach. Exemplo 2.28. Seja X = Rk , e k · k : Rk → [0, ∞) uma norma qualquer. Prova-se que X com a métrica dada por d(v, w) := kv − wk, ∀v, w ∈ Rk é um espaço métrico completo, e portanto, um espaço de Banach. Tal fato segue-se de que toda sequência limitada em Rk possui uma subsequência convergente (teorema de Bolzano-Weierstrass). Definição 2.29. (Aplicação lipschitziana.) Sejam (X, d) e ˆ espaços métricos. Uma aplicação F : X → X̂ é dita ser (X̂, d) lipschitziana ou simplesmente Lipschitz se existe 0 ≤ λ tal que ˆ (x), F (y)) ≤ λ · d(x, y), ∀x, y ∈ X. d(F Dizemos que λ é uma constante de Lipschitz de F . Denotamos o ínfimo das constantes de Lipschitz de F por Lip(F ), o qual é, ele mesmo, uma constante de Lipschitz. Observação 2.30. Notamos que as aplicações lipschitzianas são contínuas: Se F é uma tal aplicação, supondo sem perda λ > 0, Augusto Armando de Castro Júnior 49 dados x ∈ X, > 0, tomando δ = /λ, temos ˆ (x), F (y)) ≤ λ · d(x, y) < λ · /λ = . d(x, y) < δ ⇒ d(F Observação 2.31. Se X, Y e Z são espaços métricos, com f : X → Y e g : Y → Z ambas lipschitzianas, então a composta h = g ◦ f : X → Z também é Lipschitz com Lip(g ◦ f ) ≤ Lip(g) · Lip(f ). Uma subclasse relevante de aplicações Lipschitz é constituída pelas contrações de um espaço métrico nele mesmo: Definição 2.32. (Contração.) Seja (X, d) espaço métrico. Uma aplicação F : X → X é dita uma contração se existe 0 ≤ λ < 1 tal que d(F (x), F (y)) ≤ λ · d(x, y), ∀x, y ∈ X. O próximo resultado corresponde à principal ferramenta para construir objetos em dimensão infinita, onde, ao contrário do que ocorre no Rn , argumentos de compacidade são quase sempre inviáveis. Teorema 2.33. (Ponto fixo para contrações.) Sejam (X, d) um espaço métrico completo e F : X → X uma contração. Então existe um único ponto p ∈ X tal que F (p) = p. Ademais, tal ponto fixo p é um atrator de F , isto é, fixado qualquer x ∈ X, F n (x) → p quando n → +∞. (F n (x) é definido indutivamente por F n (x) := F (F n−1 (x)).) Prova: Sejam x ∈ X e xn = F n (x), n ∈ N. Provaremos que xn é uma sequência de Cauchy. Para tal, primeiro mostremos 50 Capítulo 2. Funções Analíticas por indução que existe 0 ≤ λ < 1 tal que d(xn+1 , xn ) ≤ λn · d(x1 , x0 ), ∀n ∈ N. De fato, como F é contração, temos que existe λ < 1 tal que: d(xn+1 , xn ) = d(F (xn ), F (xn−1 )) ≤ λ · d(xn , xn−1 ), o que já implica a fórmula de indução para n = 1 (o caso n = 0 é trivial). Supondo a fórmula válida para um certo n ∈ N, para n + 1, da última desigualdade, temos: d(xn+2 , xn+1 ) ≤ λ·d(xn+1 , xn ) ≤ |{z} λ·λn d(x1 , x0 ) = λn+1 ·d(x1 , x0 ), hip. indução o que prova a indução desejada. Dados m ≥ n, temos portanto: d(xm , xn ) ≤ (λn + · · · + λm ) · d(x1 , x0 ) ≤( +∞ X λj ) · d(x1 , x0 ) = j=n λn d(F (x), x), 1−λ o que prova que xn é uma sequência de Cauchy, e como X é completo, tal sequência converge, digamos, para p ∈ X. Afirmamos que p é ponto fixo de F . Realmente, F (p) = F ( lim xn ) = lim F (xn ) = lim xn+1 = p. n→+∞ n→+∞ n→+∞ Notamos que a segunda igualdade acima se dá porque toda contração é contínua, e a última desigualdade se dá porque em uma sequência convergente toda subsequência converge para o mesmo limite. Augusto Armando de Castro Júnior 51 É fácil ver que p é o único ponto fixo de F . De fato, se p, q ∈ X são pontos fixos de F , temos: d(p, q) = d(F (p), F (q)) ≤ λ · d(p, q) ⇒ (1 − λ) · d(p, q) ≤ 0 ⇒ d(p, q) = 0 ⇔ p = q, findando a prova do teorema. Observação 2.34. Assinalamos que se p é o único ponto fixo de um iterado F m , m ≥ 1 de uma aplicação F : X → X qualquer, então p é o único ponto fixo de F . De fato: F m (p) = p ⇒ F m (F (p)) = F (F m (p)) = F (p), ou seja, se p e F (p) são pontos fixos de F m (p), logo F (p) = p. Isso é muito útil, pois nem sempre F é uma contração, mas muitas vezes um seu iterado é. Assim, a existência e unicidade preconizadas no teorema do ponto fixo para contrações continuam válidas para F se apenas um iterado positivo de F for contração. Observação 2.35. (Continuidade do ponto fixo.) Seja X um espaço métrico. Suponha que X seja limitado, e seja d∞ (F, G) a distância uniforme entre duas aplicações F, G : X → X. Se F e G são contrações em X, com p e q seus respectivos pontos fixos, vale que d(p, q) = d(F (p), G(q)) ≤ d(F (p), F (q)) + d(F (q), G(q)) ≤ λd(p, q) + d∞ (F, G) ⇒ 1 d∞ (F, G), 1−λ ou seja, os pontos fixos variam Lipschitz com a contração, em d(p, q) ≤ particular, continuamente. 52 Capítulo 2. Funções Analíticas 2.2 O Espaço Normado das Aplicações Lineares Contínuas Uma aplicação A : E → Ê entre espaços vetoriais E e Ê sobre um corpo K é dita contínua se A(c · v + w) = c · v + w, para todo escalar c ∈ K e quaisquer vetores v, w ∈ E. Um exemplo importante de aplicações Lipschitz é dado pelas aplicações lineares contínuas entre espaços vetoriais, como veremos na próxima proposição. Proposição 2.36. Sejam E, Ẽ espaços vetoriais normados. As seguintes assertivas são equivalentes no que tange uma aplicação linear L : E → Ẽ: 1. L é contínua; 2. L é contínua em algum ponto x0 ∈ E; 3. L é contínua em 0 ∈ E; 4. Existe um número real c > 0 tal que kL(x)k ≤ c, ∀x ∈ E com kxk = 1. 5. L é aplicação Lipschitz, ou seja, existe um número real c > 0 tal que kL(x) − L(y)k ≤ c · kx − yk, ∀x, y ∈ E. Prova: As implicações 5 ⇒ 1 ⇒ 2 são claras. Resta-nos mostrar portanto 2 ⇒ 3 ⇒ 4 ⇒ 5. (2 ⇒ 3) Seja > 0 dado. Como L é contínua em x0 , existe δ > 0 tal que kx − x0 k < δ ⇒ kL(x) − L(x0 )k < . 2.2. O Espaço Normado das Aplicações Lineares Contínuas 53 Dado qualquer y ∈ E tal que ky − 0k = kyk < δ, podemos escrever: kyk < δ ⇔ k(y + x0 ) − x0 k < δ ⇒ kL(y + x0 ) − L(x0 )k < ⇔ kL(y) − L(x0 − x0 )k = kL(y) − L(0)k < , ou seja, L é contínua em 0 ∈ E. (3 ⇒ 4) Provemos essa sentença por absurdo. Suponha que para cada j ∈ N, exista xj ∈ E com kxj k = 1 tal que kL(xj )k ≥ j, ∀j ∈ N. Considere a sequência yj = (1/j) · xj . Como kyj k = 1 1 · kxj k = → 0, quando j → 0, j j da continuidade de L em 0 ∈ E temos que L(yj ) → L(0) = 0 ∈ Ẽ. Contudo, da linearidade de L e das propriedades de norma segue-se 1 1 · kL(xj )k ≥ · j = 1, j j o que implica que L(yj ) 6→ 0, absurdo. kL(yj )k = (4 ⇒ 5) Sejam x, y ∈ E. Se x = y, L(x) − L(y) = 0 e a desigualdade é óbvia, para qualquer c > 0. Assim, vamos supor x 6= y. Daí, kL(x)−L(y)k = kL(x) − L(y)k (x − y) ·kx−yk = kL( k·kx−yk. kx − yk kx − yk) Como kx − yk (x − y) k= = 1, kx − yk kx − yk a assertiva 4 implica que k kL(x) − L(y)k = kL( ou seja, L é Lipschitz. (x − y) k · kx − yk ≤ c · kx − yk, kx − yk) 54 Capítulo 2. Funções Analíticas Proposição 2.37. (Espaço L(E, Ẽ)/Norma do operador.) Sejam E e Ẽ dois espaços vetoriais normados. Então L(E, Ẽ) := {T : E → Ẽ; T é operador linear limitado } é um espaço vetorial. Ademais a aplicação k · k : L(E, Ẽ) → [0, +∞) dada por kT k := sup{kT · xkẼ : x ∈ E, kxkE = 1} define uma norma (chamada de norma do operador) em L(E, Ẽ). Prova: Seja b ∈ R (ou C) um escalar e T1 : E → Ẽ, T2 : E → Ẽ dois operadores lineares. Então claramente T := T1 + b · T2 é um operador linear de E em Ẽ. Além disso T é limitado, pois se c1 e c2 são as constantes de Lipschitz (vide proposição 2.36 acima) respectivamente de T1 e T2 , temos kT (x) − T (y)kẼ ≤ kT1 (x) − T1 (y)kẼ + |b|kT2 (x) − T2 (y)kẼ ≤ c1 kx − ykE + |b|c2 kx − ykE , ∀x, y ∈ E, o que implica que T é Lipschitz com constante c := c1 + |b|c2 , e portanto limitado. Tal implica que L(E, Ẽ) é um espaço vetorial. Só resta vermos que a aplicação k · k do enunciado é mesmo uma norma em L(E, Ẽ). A proposição 2.36 nos garante que tal aplicação está bem definida em L(E, Ẽ), com imagem em [0, +∞). Se T ≡ 0, claramente kT k = 0. Por outro lado, kT k = 0 implica que T · x = 0, ∀x ∈ E com kxkE = 1. Se v ∈ E, então kT · vkẼ = kT · v k · kvkE ≤ kT k · kvkE = 0, kvkE Ẽ donde concluímos que T ≡ 0. 2.2. O Espaço Normado das Aplicações Lineares Contínuas 55 Dado um escalar b ∈ R (ou C), temos que kbT k = sup{kbT · xkẼ : x ∈ E, kxkE = 1} = sup{|b|kT · xkẼ : x ∈ E, kxkE = 1} = |b|kT k. Finalmente, dados T1 , T2 ∈ L(E, Ẽ), a desigualdade triangular vem de kT1 +T2 k = sup{k(T1 +T2 )·xkẼ : x ∈ E, kxkE = 1} ≤ (pela desigualdade triangular em Ẽ) sup{kT1 ·xkẼ +kT2 ·xk : x ∈ E, kxkE = 1} ≤ sup{kT1 ·xkẼ : x ∈ E, kxkE = 1}+sup{kT2 ·ykẼ : y ∈ E, kykE = 1} = kT1 k+kT2 k. Proposição 2.38. Sejam E e Ẽ dois espaços vetoriais normados, sendo Ẽ de Banach. Então o espaço vetorial L(E, Ẽ), dotado da norma do operador, é um espaço de Banach. Prova: Seja Tn ∈ L(E, Ẽ) uma sequência de Cauchy. Em particular, como k(Tn −Tm )(v)kẼ ≤ kTn −Tm kkvkE , concluímos que para cada v ∈ E, (Tn (v)) é uma sequência de Cauchy em Ẽ. Portanto, definamos T : E → Ẽ por T (v) = lim Tn (v), ∀v ∈ E. n→+∞ Claramente T é linear: T (v + w) = lim Tn (c · v + w) = lim c · Tn (v) + T n (w) = n→+∞ n→+∞ 56 Capítulo 2. Funções Analíticas c· lim Tn (v)+ lim Tn (w) = c·T (v)+T (w), ∀c ∈ R( ou C), ∀v, w ∈ E. n→+∞ n→+∞ Daí, é fácil ver que T ∈ L(E, Ẽ). De fato, seja > 0, e tome n0 ∈ N tal que kTn − Tm k < , ∀n, m ≥ n0 . Daí, dado v ∈ E com kvk = 1, temos: kTn (v)kẼ ≤ kTn k ≤ kTn0 k + kTn − Tn0 k < kTn0 k + , ∀n ≥ n0 . A continuidade da norma e a desigualdade acima implicam que kT (v)kẼ ≤ kTn0 k + , ∀v ∈ E, kvkE = 1, donde sup {kT (v)kẼ } ≤ kTn0 k + ⇒ T é limitado. kvk=1 Só falta vermos que Tn → T na norma do operador. Dado v ∈ E tal que kvk = 1, vimos acima que ∀n, m ≥ n0 , vale: kTn (v) − Tm (v)kẼ ≤ kTn − Tm k < . Novamente, fazendo m → +∞, fixando n ≥ n0 , a continuidade da norma e a última inequação implicam que ∀v ∈ E, com kvkE = 1 vale que kTn (v) − T (v)kẼ ≤ . Donde concluímos que ∀n ≥ n0 , sup {kTn (v) − T (v)kẼ } = kTn − T k ≤ . kvkE Estamos agora aptos a enunciar e provar importantes corolários do Teorema do Ponto Fixo conhecidos como versões não diferenciáveis do teorema da Função Inversa: Teorema 2.39. (Perturbação da Identidade.) Sejam E um espaço de Banach, I : E → E a identidade em E e seja Φ : E → E uma contração em E. Então I +Φ é um homeomorfismo sobre E. 2.2. O Espaço Normado das Aplicações Lineares Contínuas 57 Prova: Sejam x, y ∈ E e h = I + Φ. Seja 0 < λ < 1 a constante de Lipschitz de Φ. Então kI(x) + Φ(x) − I(y) − Φ(y)k ≥ kx − yk + kΦ(x) − Φ(y)k ≥ kx − yk − λ · kx − yk = (1 − λ) · kx − yk ⇒ kh(x) − h(y)k ≥ (1 − λ) · kx − yk = 6 0 se x 6= y; donde obtemos a injetividade de h, e também a continuidade de h−1 . Mostremos agora a sobrejetividade de h. Seja z ∈ E. Queremos ver que existe p ∈ E tal que h(p) = z ⇔ p + Φ(p) = z ⇔ p = z − Φ(p). Por conseguinte definamos fz : E → E por fz (x) = z − Φ(x). Basta então acharmos um ponto fixo p para fz , que teremos h(p) = z. De fato, fz : E → E é contração: kfz (x)−fz (y)k = kz−Φ(x)−z+Φ(y)k = kΦ(y)−Φ(x)k ≤ λ·kx−yk. Como E é espaço normado completo, segue-se do teorema do ponto fixo para contrações que existe um único p ∈ E tal que h(p) = z, como queríamos. Isso nos dá ao mesmo tempo a sobrejetividade e uma nova prova da injetividade. Lema 2.40. Seja E um espaço de Banach, L ∈ L(E, E) satisfazendo kLk ≤ a < 1 e G ∈ L(E, E) isomorfismo com kG−1 k ≤ a < 1. Então: a) (I + L) é isomorfismo e k(I + L)−1 k ≤ 1/(1 − a); b) (I + G) é isomorfismo e k(I + G)−1 k ≤ a/(1 − a). Prova: a) Seja y ∈ E qualquer fixado. Defina u : E → E por u(x) := y − L(x). 58 Capítulo 2. Funções Analíticas Os gráficos de y = x3 e y = x3 − δ 2 x nos mostram que somando uma contração a um homeomorfismo com inversa não lipschitziana, o resultado pode não ser um homeomorfismo. Mostram ademais que a soma de homeomorfismos pode não ser um homeomorfismo. Logo |u(x1 ) − u(x2 )| = |L(x2 − x1 )| ≤ a · |x2 − x1 |, o que implica que u : E → E é uma contração. Pelo teorema do ponto fixo para contrações, ∃!z ∈ E/ u(z) = z ⇔ ∃!z ∈ E/ z = y − L(z) ⇔ ∃!z ∈ E/ y = z + L(z), o que implica que (I + L) é isomorfismo. Seja y ∈ E com |y| = 1 e seja x ∈ E tal que (L + I)−1 (y) = x. Como x + L(x) = y, temos que |x| − a · |x| ≤ 1 ⇒ |x| ≤ 1/(1 − a), donde se conclui que k(I + L)−1 k ≤ 1/(1 − a). b) (I + G) = G · (I + G−1 ). Como kG−1 k ≤ a < 1 |{z} ⇒ (I + G−1 ) é inversível. ítem a) 2.2. O Espaço Normado das Aplicações Lineares Contínuas 59 Daí, (I + G)−1 = (I + G−1 )−1 · G−1 , o que implica que k(I + G)−1 k ≤ k(I + G−1 )−1 k · kG−1 k ≤ 1 a ·a = . 1−a 1−a Corolário 2.41. (Perturbação de uma aplicação bilipschitz.) Sejam E, Ẽ espaços de Banach e Ψ : E → Ẽ uma aplicação bilipschitz (sobrejetiva), isto é, f é invertível e lipschitziana com inversa também lipschitziana. Seja Φ : E → Ẽ Lipschitz tal que sua constante de Lipschitz Lip(Φ) < Lip(Ψ−1 )−1 . Então Ψ + Φ : E → Ẽ é um homeomorfismo (sobrejetivo). Prova: Considere h : Ẽ → Ẽ dado por h := (Ψ + Φ)Ψ−1 = I + Φ ◦ Ψ−1 . Dados x̃, ỹ ∈ Ẽ, kΦ(Ψ−1 (x̃)) − Φ(Ψ−1 (ỹ))k ≤ Lip(Φ) · kΨ1 (x̃) − Ψ−1 (ỹ)k ≤ Lip(Φ)·Lip(Ψ−1 )kx̃− ỹk ⇒ kΦ◦Ψ−1 (x̃)−Φ◦Ψ−1 (ỹ)k ≤ λkx̃− ỹk, ou seja, Φ ◦ Ψ−1 é uma λ−contração. Logo, pelo teorema da perturbação da identidade, h = (Ψ + Φ) ◦ Ψ−1 = I + ΦΨ−1 é um homeomorfismo (injetivo e sobre Ẽ). Portanto a composição (Ψ + Φ)Ψ−1 ◦ Ψ = Ψ + Φ é um homeomorfismo, como queríamos mostrar. Corolário 2.42. (Perturbação do Isomorfismo.) Sejam E, Ẽ espaços de Banach e T : E → Ẽ um isomorfismo linear (sobrejetivo). Seja Φ : E → Ẽ Lipschitz tal que sua constante de Lipschitz Lip(Φ) < kT −1 k−1 . Então T + Φ : E → Ẽ é um homeomorfismo (sobrejetivo). 60 Capítulo 2. Funções Analíticas Prova: Imediata do corolário anterior. 2.3 Integração de Caminhos em Espaços Vetoriais Definição 2.43. (Partição de um intervalo.) Uma partição P de um intervalo [a, b] ⊂ R é uma coleção finita P = {I1 , . . . , Ij } de intervalos dois a dois disjuntos tais que I1 = [x0 , x1 ), . . . , Ij = [xj−1 , xj ], com x0 = a, xj = b e x0 ≤ · · · ≤ xj . Note que uma partição P de um intervalo [a, b] fica inteiramente determinada pelo conjunto dos pontos AP := {a = x0 , . . . , xj = b}, o qual designaremos por conjunto dos pontos associados a P. Definição 2.44. (Diâmetro de uma partição de um intervalo.) O diâmetro de uma partição P de um intervalo I é o máximo dos diâmetros (comprimentos) dos elementos de P. Definição 2.45. (Integral de Riemann.) Seja I = [a, b] e f : I → E um caminho limitado, tomando valores em um espaço R de Banach E. A integral de Riemann I f (x)dx ∈ E, se existir, é o limite Z f (x)dx := I lim diam(P)→0 #P X f (xj ) · vol(Ij ), j=1 onde xj ∈ Ij e P = {Ij , j = 1, . . . , #P}, e vol é o volume (comprimento) do intervalo. Se existir a integral de Riemann de uma aplicação f , então dizemos que f é integrável à Riemann, ou simplesmente, P#P integrável. Uma soma do tipo j=1 f (xj ) · vol(Ij ), com xj ∈ Pj e P = {C1 , . . . , I#P } é chamada de soma de Riemann de f em Augusto Armando de Castro Júnior 61 relação a P, e denotada por s(f, P), ou apenas, por s(P) nos contextos em que f puder ser subentendida sem ambiguidades. Definição 2.46. (Refinamento de uma partição.) Seja P uma partição de um intervalo I ⊂ Rn . Uma partição P̂ de I é dita um refinamento de P se todo elemento de P̂ estiver contido em algum elemento de P. Também escrevemos que P̂ refina P. Proposição 2.47. Sejam I um intervalo compacto, E um espaço de Banach e f : I → E uma aplicação contínua. Então R ∃ I f (x)dx ∈ E. Prova: Como f é contínua em I compacto, é uniformemente contínua. Seja > 0 e tome δ > 0 tal que kf (x) − f (y)k < /(2 vol(I)), ∀x, y ∈ I, d(x, y) < δ. Sejam P e P̂ partições quaisquer, com diam(P) < δ e diam(P̂) < δ. Seja P̃ uma partição que refina tanto P como P̂. Daí, comparando somas de Riemann em P e P̃, obtemos: ks(P) − s(P̃)k = k #P X f (xj ) · vol(Ij ) − j #P̃ X f (x̃j ) · vol(I˜j )k. j Para cada Ij ∈ P, tomemos I˜j,1 , . . . , I˜j,r(j) ∈ P̃ tais que Ij = r(j) ∪˙ i=1 I˜j,i . Por conseguinte, reenumerando a soma de Riemann em P̃, chegamos a ks(P)−s(P̃)k = k #P X r(j) #P X X f (xj )·vol(Ij )− ( f (x̃j,i )·vol(I˜j,i ))k ≤ j #P X j kf (xj ) · vol(Ij ) − j r(j) X i=1 i=1 f (x̃j,i ) · vol(I˜j,i ))k = 62 Capítulo 2. Funções Analíticas r(j) #P X X (f (xj ) − f (x̃j,i )) · vol(I˜j,i ))k = k i=1 j ≤ r(j) #P X X j kf (xj )−f (x̃j,i )k·vol(I˜j,i ) ≤ i=1 r(j) #P X X · vol(I˜j,i ) = /2. 2 vol(I) j i=1 Trocando P por P̂ acima, temos que ks(P̂) − s(P̃)k < /2, logo ks(P) − s(P̂)k ≤ ks(P) − s(P̃)k + ks(P̃) − s(P̂)k < , implicando que f é integrável. Definição 2.48. (Integral de Linha.) Sejam Ê, E espaços de Banach, U ⊂ Ê um aberto, g : U → L(Ê, E) uma aplicação C 0 e γ ⊂ U uma curva C 1 por partes, parametrizada por ϕ : [a, b] → γ. A integral de linha de g em γ é definida por: Z Z b g := γ g(ϕ(t)) · ϕ0 (t)dt. a Temos a seguinte proposição: Proposição 2.49. A integral de linha R γ g está bem definida, a menos de sinal. Prova: De fato, tomando ϕ : [a, b] → γ, ψ : [c, d] → γ parametrizações de γ, obtemos que Z b Z g(ϕ(t))·ϕ0 (t)dt = g := γ a Z a Z b g(ψ◦ψ −1 ◦ϕ(t))·(ψ◦ψ −1 ◦ϕ)0 (t)dt = a b g(ψ(ψ −1 ◦ ϕ(t)) · ψ 0 (ψ −1 (ϕ(t)) · (ψ −1 ◦ ϕ)0 (t)dt = Augusto Armando de Castro Júnior Z 63 b (g(ψ(ψ −1 ◦ ϕ(t)) · ψ 0 (ψ −1 (ϕ(t))) · (ψ −1 ◦ ϕ)0 (t)dt = a (pela fórmula de mudança de variáveis na reta) d Z g(ψ(t)) · ψ 0 (t)dt. c Quando Ê = C e E é um espaço complexo, então L(Ê, E) ' E. Usando desta última identificação, a integral de linha apresenta a forma particular de: Definição 2.50. (Integral por caminhos complexa.) Seja γ ⊂ C uma curva C 1 por partes parametrizada por ϕ : [a, b] → γ. Seja U ⊂ C um aberto e f : U → E uma função contínua. Designando por ∗ o sinal de produto por escalar, a integral por caminhos complexa de f em γ é definida por: Z Z f (z)dz := γ b f (ϕ(t)) ∗ ϕ0 (t)dt. a Note que a integral por caminhos complexa é simplesmente um caso particular da integral de linha, e o destaque como definição a parte se deve apenas pelo seu uso frequente em nosso texto. Lema 2.51. Sejam Ê, E espaços de Banach, U ⊂ Ê um aberto, g : U → L(Ê, E) uma função contínua e ϕ : [a, b] → U , um caminho C 1 tendo por imagem uma curva γ. Dado > 0, existe uma poligonal ψ : [a, b] → U , cuja integral de linha −aproxima a integral de linha Z Z g= γ a b g(ϕ(t)) · ϕ0 (t)dt. 64 Capítulo 2. Funções Analíticas Prova: Como ϕ é contínua e [a, b] é compacto temos, em primeiro lugar, que γ = ϕ([a, b]) é compacto e que supt∈[a,b] {|ϕ0 (t)|} < +∞. Seja M := (supt∈[a,b] {|ϕ0 (t)|} · (b − a) + 1) e seja > 0 dado. Para cada x ∈ γ, seja B(x, rx ) ⊂ V tal que g(B(x, rx )) ⊂ B(g(x), /3M ). Extraímos então uma subcobertura finita da cobertura {B(x, rx /3)} obtendo B := {B1 = B(x1 , rx1 /3 ), . . . , xl , rxl /3 )}. Seja δ0 = min{rxj /3, j = 1, . . . , l}. Note que se y, z ∈ ∪j Bj são tais que ky − zk < δ0 , então se y ∈ Bq , z ∈ Bp , temos kxq − zk ≤ kxq − yk + ky − zk ≤ rxq /3 + δ0 ≤ rxq , ou seja z ∈ B(xq , rxq ). Isto implica que kg(z) − g(y)k ≤ kg(z) − g(xq )k + k(g(xq ) − g(y)k < /M. Note ainda que se z, y ∈ B(xq , rxq ) para algum q = 1 . . . l, da convexidade das bolas em um espaço vetorial normado, temos que o segmento [z, y] := {tz + (1 − t)y, t ∈ [0, 1] ⊂ R} está contido em B(xq , rxq ) e portanto em V . Em particular, se dois pontos x, x̂ em γ distam menos que δ0 , então o segmento que os une está contido em V , e diam(g([x, x̂]) < /M . Seja agora α > 0 tal que ( |ϕ(t)) − ϕ(s)| < δ0 |t − s| < α ⇒ 0 0 |ϕ (t) − ϕ (s)| < /(2(b − a) supt∈[a,b] {g(ϕ(t))}) Seja k ∈ N tal que (b − a)/k < α, e sejam t0 = a, . . . , tk = b tais que tj = a + kj (b − a), j = 0, . . . , k. Definimos então a poligonal ψ : [a, b] → Γ ⊂ V por ψ(t) := ϕ(tj ) + (ϕ(tj+1 ) − ϕ(tj )) · (t − tj ) · para t ∈ [tj , tj+1 ], 0 ≤ j < k. k , b−a Augusto Armando de Castro Júnior Temos então: Z Z k−1 Z X ( g− g = γ Γ k−1 X Z tj+1 tj j=0 g(ϕ(t))·ϕ0 (t)dt− tj j=0 Z tj+1 tj g(ψ(t))·ψ 0 (t)dt) ≤ ϕ(tj+1 ) − ϕ(tj ) g(ϕ(t)) · ϕ0 (t) − g(ψ(t)) · dt ≤ tj+1 − tj k−1 X Z tj+1 j=0 tj+1 65 kg(ϕ(t)) · ϕ0 (t) − g(ϕ(t)) · tj kg(ϕ(t)) · ϕ(tj+1 ) − ϕ(tj ) k+ tj+1 − tj ϕ(tj+1 ) − ϕ(tj ) ϕ(tj+1 ) − ϕ(tj ) − g(ψ(t)) · kdt tj+1 − tj tj+1 − tj Analisando cada parcela acima, temos: Z tj+1 ϕ(tj+1 ) − ϕ(tj ) )k+ kg(ϕ(t))·(ϕ0 (t)− tj+1 − tj tj Norma do operador ϕ(tj+1 ) − ϕ(tj ) k(g(ϕ(t) − g(ψ(t))) · ( )kdt tj+1 − tj Z tj+1 kg(ϕ(t))kkϕ0 (t)− tj Z ϕ(tj+1 ) − ϕ(tj ) kdt+ tj+1 − tj tj+1 kg(ϕ(t)) − g(ψ(t))kk tj tj+1 Z sup {kg(ϕ(t))k} · t∈[a,b] ϕ(tj+1 ) − ϕ(tj ) kdt ≤ tj+1 − tj kϕ0 (t) − tj Z tj+1 t∈[a,b] ϕ(tj+1 ) − ϕ(tj ) kdt+ tj+1 − tj DV M z}|{ kg(ϕ(t))−g(ψ(t))k sup kϕ (t)kdt ≤ 0 t∈[a,b] tj sup {|g(ϕ(t))|} · z}|{ ≤ Z tj+1 2(b − a) supt∈[a,b] {|g(ϕ(t))|} tj Z tj+1 Z tj+1 dt < dt. · · M b − a tj tj dt+ 66 Capítulo 2. Funções Analíticas Somando em j, concluímos que Z k−1 Z X g − g < γ Γ j=0 · b−a Z tj+1 dt = . tj Lema 2.52. Sejam Ê, E espaços de Banach, gn , g : U → L(Ê, E) aplicações contínuas em um aberto U ⊂ Ê e ϕ : [a, b] → U , um caminho C 1 por partes tendo por imagem uma curva γ. Se gn converge a g uniformemente em partes compactas, então Z Z b Z Z b 0 gn = gn (ϕ(t)) · ϕ (t)dt → g= g(ϕ(t)) · ϕ0 (t)dt γ a γ a quando n → ∞. Prova: Sem perda, podemos supor `(γ) > 0. Seja > 0, e tome n0 tal que kgn (x) − g(x)k < /`(γ), ∀x ∈ γ, ∀n ≥ n0 . Daí, Z Z b Z b Z 0 gn (ϕ(t)) · ϕ (t)dt − g(ϕ(t)) · ϕ0 (t)dt = gn − g = γ γ a a Z b (gn (ϕ(t)) − g(ϕ(t))) · ϕ0 (t)dt ≤ a b Z kgn (ϕ(t)) − g(ϕ(t))k · kϕ0 (t)kdt < ≤ a · < `(γ) Z b kϕ0 (t)kdt = . a O lema acima tem como consequência um resultado análogo para integrais por caminhos complexas. Todavia, tais resultados também podem ser facilmente provados com o auxílio do utilíssimo: Augusto Armando de Castro Júnior 67 Lema 2.53. Dada f : U ⊂ C → E e uma parametrização C 1 ϕ : [a, b] → γ de uma curva γ ⊂ U . Então, temos: Z f (z)dz ≤ sup{kf (z)k} · `(γ). z∈γ γ Prova: Z Z f (z)dz = γ b a f (ϕ(t)) ∗ ϕ0 (t)dt = n X (b − a) f (ϕ(tj )) ∗ ϕ0 (tj ) · = lim , n→+∞ n j=1 onde tj = a + (b − a) · j/n. Daí, n X (b − a) f (ϕ(tj )) ∗ ϕ0 (tj ) · lim = n→+∞ n j=1 n X (b − a) f (ϕ(tj )) ∗ ϕ0 (tj ) · = lim ≤ n→+∞ n j=1 ≤ lim n→+∞ n X kf (ϕ(tj ))k|ϕ0 (tj )|· j=1 Z ≤ sup{kf (z)k} · z∈γ a (b − a) = n Z b kf (ϕ(t))k|ϕ0 (t)|dt ≤ a b |ϕ0 (t)|dt = sup{kf (z)k} · `(γ). z∈γ Corolário 2.54. Sejam fn , f : U → E aplicações contínuas em um aberto U ⊂ C e ϕ : [a, b] → U , um caminho C 1 por partes tendo por imagem uma curva γ. Se fn converge a f uniformemente em partes compactas, então Z Z b Z Z fn (z)dz = fn (ϕ(t))∗ϕ0 (t)dt → f (z)dz = γ a quando n → ∞. γ a b f (ϕ(t))∗ϕ0 (t)dt, 68 Capítulo 2. Funções Analíticas Prova: Pelo lema 2.53, Z k fn (z) − f (z)dzk ≤ sup{kfn (z) − f (z)k} · `(γ). z∈γ γ Se `(γ) = 0, nada há a provar. Assim, suponhamos que `(γ) > 0. Tome n0 tal que supz∈γ {kfn (z) − f (z)k} < /`(γ), ∀n ≥ n0 . Por conseguinte, Z fn (z) − f (z)dz ≤ sup{kfn (z) − f (z)k} · `(γ) < , ∀n ≥ n0 . z∈γ γ Corolário 2.55. Sejam fn , f : U → E aplicações contínuas em um aberto U ⊂ C e ϕ : [a, b] → U , um caminho C 1 por P partes tendo por imagem uma curva γ. Se fn converge a f uniformemente em partes compactas, então Z Z X ∞ ∞ Z b X 0 fn (z)dz = fn (ϕ(t)) ∗ ϕ (t)dt → f (z)dz γ n=0 n=0 Z = a γ b f (ϕ(t)) ∗ ϕ0 (t)dt, a quando n → ∞. 2.4 A Teoria de Cauchy-Goursat Nesta seção adaptamos a teoria de Análise Complexa para aplicações holomorfas tomando valores em espaços de Banach. Muitos dos teoremas daqui são adaptações de teoremas vistos em cursos básicos de Funções Analíticas de C. Em tal nível elementar, uma boa referência é o livro do prof. Márcio Soares [20]. Augusto Armando de Castro Júnior 69 Definição 2.56. (Aplicação Holomorfa.) Seja U ⊂ C um conjunto aberto e f : U → E, onde E é um espaço de Banach. Dizemos que f é holomorfa em z0 ∈ U se existe o limite lim z→z0 f (z) − f (z0 ) = f 0 (z0 ). z − z0 Neste caso, f 0 (z0 ) é chamada de derivada holomorfa de f em z0 . Se f é holomorfa em cada ponto de U , dizemos que f é holomorfa em U ou, simplesmente, que f é holomorfa. Lembramos aqui a prova do Teorema de Cauchy-Goursat para regiões triangulares, adaptando-o ao contexto de espaços de Banach. Teorema 2.57. (Teorema de Cauchy-Goursat para regiões triangulares.) Sejam U ⊂ C um aberto, E um espaço de Banach, f : U → E uma aplicação holomorfa e seja ∆ um triângulo compacto contido em U . Então Z f (z)dz = 0. ∆ Prova: Realizemos uma construção indutiva para a prova do teorema. Escrevamos ∆ = ∆0 e subdividamos este triângulo em quatro triângulos (∆10 , ∆20 , ∆30 , ∆40 ) a ele semelhantes, cujos lados têm metade do comprimento de seus correspondentes no triângulo original. Ademais, orientamos os bordos de cada um dos triângulos no sentido horário. Daí, Z Z f (z)dz = ∆0 Z f (z)dz+ ∆10 Z f (z)dz+ ∆20 Z f (z)dz+ ∆30 f (z)dz. ∆40 Vejamos como se dá o passo de indução: supondo que temos construído um triângulo ∆n para um certo n ∈ N (por exemplo, 70 Capítulo 2. Funções Analíticas Figura 1 – Teorema de Cauchy-Goursat em região triangular O triângulo ∆ subdividido em quatro triângulos semelhantes, com metade do lado e 1/4 de sua área. já definimos, para n = 0, ∆0 := ∆). Daí, dividimos ∆n em 4 triângulos ∆1n , ∆2n , ∆3n , ∆4n semelhantes como explicado acima. Definimos ∆n+1 := ∆jn , onde Z Z f (z)dz = max{ Z f (z)dz , f (z)dz , Z Z f (z)dz , f (z)dz } ∆jn ∆1n ∆3n ∆2n ∆4n Daí, Z ∆n Z f (z)dz ≤ 4 · ∆n+1 f (z)dz Ademais, se δn é o comprimento do maior lado do triângulo ∆n , é claro que δn+1 = δn /2 = δ0 /(2n ), `(∆n+1 ) = `(∆n )/2 = `(∆0 )/(2n ). Como os triângulos ∆n , n ∈ N formam uma família encaixante de compactos não vazios, podemos tomar z0 ∈ ∩n∈N ∆n . Como Augusto Armando de Castro Júnior 71 f é holomorfa, dado > 0, ∃τ > 0 tal que |z−z0 | < τ ⇒ |f (z)−f (z0 )−f 0 (z0 )∗(z−z0 )| ≤ Daí, Z ·|z−z0 |. δ0 · `(∆) f (z) − f (z0 ) − f 0 (z0 ) ∗ (z − z0 )dz = ∆n Z Z f (z0 ) + f 0 (z0 ) ∗ (z − z0 )dz f (z)dz − = ∆n ∆n (pois o Teorema de Cauchy-Goursat claramente vale para aplicações holomorfas afins) Z f (z)dz. ∆n Por conseguinte, Z Z f (z)dz ≤ 4n ∆ Z = 4n ∆n ∆n f (z)dz = f (z) − f (z0 ) − f 0 (z0 ) ∗ (z − z0 )dz (supondo n suficientemente grande de modo a que δn < τ ) 4n · δ0 `(∆) · sup{|z − z0 |} · `(∆n ) ≤ 4n · · n · n ≤ . δ0 · `(∆) δ0 · `(∆) 2 2 Como > 0 é arbitrário, segue-se que Z f (z)dz = 0. ∆ A partir da versão acima, é bastante fácil de provar uma versão similar para círculos (e curvas convexas) no lugar de triângulo. 72 Capítulo 2. Funções Analíticas Usando a definição de integral curvilínea complexa, saR 1 dz = 2πi, para qualquer curva fechada simples bemos que γ z−z 0 γ contendo z0 na região aberta limitada de C que possui γ como fronteira. O resultado mais importante na teoria de aplicação analíticas é o seguinte: Teorema 2.58. (Fórmula Integral de Cauchy.) Seja E um espaço de Banach sobre C, U ⊂ C um aberto simplesmente conexo e f : U → E uma aplicação holomorfa. Seja γ0 ⊂ U uma região compacta cuja fronteira é uma curva de Jordan γ. Então, dado z0 ∈ int(γ0 ), vale: f (z0 ) = 1 2πi Z γ f (z) dz. z − z0 Prova: Dado > 0, seja δ > 0 da continuidade uniforme de f em γ0 tal que kz − z0 k ≤ δ ⇒ kf (z) − f (z0 )k < . 2π Obviamente, podemos supor δ > 0 suficientemente pequeno de modo a que B(0, δ) ⊂ int(γ0 ). Chamemos de γδ a curva que é o círculo de centro z0 e raio δ. Ligando γ a γδ por meio de uma curva auxiliar Γ difeomorfa a um intervalo compacto, conforme mostra a figura, usando a propriedade de que uma integral de linha muda de sinal se trocamos a orientação e aplicando o teorema de CauchyGoursat, obtemos que Z γ f (z) dz = z − z0 Z γδ f (z) dz. z − z0 Augusto Armando de Castro Júnior 73 Figura 2 – Fórmula Integral de Cauchy Justapondo as curvas Γ, γδ , −Γ, γ, e aplicando o Teorema de Cauchy-Goursat, obtemos que a integral do círculo de raio delta em torno de z0 é zero. Mas Z γδ Z Z f (z) 1 f (z) dz−f (z0 )2πi = dz−f (z0 ) dz = z − z0 γδ z − z0 γδ z − z0 Z γδ f (z) − f (z0 ) dz. z − z0 Como para z sobre a curva γδ , temos kf (z) − f (z0 )k < /2π e kz − z0 k = δ, obtemos Z γδ f (z) − f (z0 ) dz < · `(γδ ) = . z − z0 2πδ 74 Capítulo 2. Funções Analíticas Concluímos que Z f (z) Z f (z) − f (z ) 0 dz − 2πif (z0 ) = dz < , ∀ > 0, z − z z − z 0 0 γδ γ logo Z γ f (z) = 2πif (z0 ). z − z0 Corolário 2.59. (Estimativas de Cauchy.) Seja f uma função holomorfa limitada em um disco D(z, r), digamos |f (z)| < K, ∀z ∈ D(z0 , r). Então |f (n) (z0 )| ≤ n!K rn . Prova: Seja γs = ∂B(z0 , s), s < r. Do teorema acima, obtemos: |f (n) n! Z f (w) (z0 )| = dw ≤ n+1 2πi γs (w − z0 ) n! K n!K n! K · `(γs ) = · 2πs = n . n+1 n+1 2π s 2π s s Como s < r é arbitrário, concluímos que |f (n) (z0 )| ≤ n!K . rn Teorema 2.60. (Teorema de Liouville.) Seja E um espaço de Banach complexo. Se f : C → E é holomorfa e limitada, então f é constante. Prova: Pelas estimativas de Cauchy, dado z0 ∈ C e um disco qualquer D(z0 , r), temos kf 0 (z0 )k ≤ supz∈C {kf (z)k} . r Augusto Armando de Castro Júnior 75 Tomando r > 0 suficientemente grande, concluímos que f 0 (z0 ) = 0. Como z0 ∈ C é arbitrário e C é conexo, temos que f é constante. Teorema 2.61. (Teorema Fundamental da Álgebra). Todo polinômio p : C → C não constante possui raiz em C. Prova: Primeiro veremos que limz→∞ |p(z)| = +∞, onde p : C → C é um polinômio não constante, digamos, p(z) = a0 + a1 ∗ z + · · · + an ∗ z n , com an 6= 0. Como estamos analisando o que ocorre quando |z| → +∞, podemos supor z 6= 0; assim, fazendo uso da desigualdade triangular, obtemos: |a0 | |an−1 | − ... n |p(z)| ≥ |z|n · |an | − |z| |z| Seja M > 0 qualquer. Tome K := max{2(M + 1), 2(M + 1) · n · |aj |, j = 0, . . . n}. Temos então que |z| > K ⇒ |p(z)| > M , o que por definição significa que lim |p(z)| = +∞. z→+∞ Agora, suponha por absurdo que p não possua raízes, ou seja, p(z) 6= 0, ∀z ∈ C. Logo, f (z) := 1/p(z) define uma função inteira, isto é, uma função holomorfa com domínio igual a C. Ademais, f é limitada: • Como f é contínua, existe M̃ > 0 tal que |f (z)| < M̃ para todo z na bola compacta B(0, K), onde K é a mesma constante do parágrafo anterior. • Para z, |z| > K, temos que |f (z)| = 1/|p(z)| < 1/M . 76 Capítulo 2. Funções Analíticas Por conseguinte, tomando M̂ := max{M̃ , 1/M }, temos que |f (z) < M̂ , ∀z ∈ C. Sendo f função inteira e limitada, segue-se por Liouville que f é constante. Mas nesse caso, p(z) = 1/f (z) seria constante, absurdo. Dizemos que N ⊂ C é um anel centrado em a ∈ C, se N é da forma N = N (a, r1 , r2 ) := {z ∈ C, r1 ≤ |z−a| ≤ r2 , com r1 , r2 > 0, a ∈ C}. A fórmula integral de Cauchy nos permite ainda demonstrar o seguinte teorema sobre aplicações holomorfas em um anel: Teorema 2.62. (Séries de Laurent em Espaços de Banach.) Sejam N ⊂ C um anel centrado em a ∈ C, V ⊂ C uma vizinhança de N , e f : V → E uma aplicação holomorfa tomando valores em um espaço de Banach E. Então existem únicos An ∈ E, n ∈ Z tais que f (z) = +∞ X An (z − a)n , ∀z ∈ N , n=−∞ a convergência do limite acima sendo absoluta e uniforme em N. Prova: Sendo N um anel centrado em a ∈ C e f : V → E, e orientando a fronteira de N conforme a figura, dado z ∈ N \ ∂N , pela fórmula integral de Cauchy, temos: f (z) = 1 2πi Z ∂N f (w) 1 dw = w−z 2πi Z γ2 f (w) dw− w−z Z γ1 f (w) dw = w−z Augusto Armando de Castro Júnior 77 Figura 3 – Série de Laurent Z Z 1 f (w) f (w) dw + dw = 2πi γ2 w − a − (z − a) γ1 z − a − (w − a) Z Z f (w) 1 f (w) dw+ z−a w−a dw = 2πi γ2 (w − a) ∗ (1 − w−a ) γ1 (z − a) ∗ (1 − z−a ) (note que para w ∈ γ2 vale |w − a| > |z − a|, ∀z ∈ N ; já para w ∈ γ1 vale |w − a| < |z − a|) Z Z ∞ ∞ 1 f (w) X z − a j f (w) X w − a j ∗ ( ) dw+ ∗ ( ) dw . 2πi γ2 (w − a) j=0 w − a γ1 z − a j=0 z − a As somas geométricas dentro das integrais convergem absolutamente e uniformemente em partes compactas de int(N ), logo podemos permutar seus limites com as integrais, e usando a linearidade das integrais, obtemos: ∞ Z 1 hX f (w) f (z) = dw ∗ (z − a)j + 2πi j=0 γ2 (w − a)j+1 ∞ Z X j=1 i f (w)(w − a)j−1 dw ∗ (z − a)−j , γ1 também chamada de Série de Laurent de f no anel N . Para vermos a unicidade dos coeficientes de Laurent, P+∞ basta notarmos que se f (z) = n=−∞ An (z − a)n , então dado 78 Capítulo 2. Funções Analíticas k ∈ Z, e para qualquer círculo com centro em a e contido em N , temos 1 2πi Z f (z)·(z−a)k+1 dz = γ uma vez que R γ 1 2πi Z +∞ X An (z−a)n+k+1 dz = Ak , γ n=−∞ (z − a)n+k+1 dz = 0, se n + k + 1 6= −1, e é igual a 2πi, se n + k + 1 = −1. 2.5 Resíduos A fórmula integral de Cauchy e a teoria de séries de Laurent não apenas nos permitem provar teoremas profundos como o Teorema Fundamental da Álgebra e o princípio do Módulo Máximo, como nos permitem calcular integrais e mais importante ainda, raízes de funções holomorfa, especialmente polinômios. Essas técnicas são o objetivo desta seção. A força delas pode ser apreciada pelos exercícios 11 e 13 no final capítulo, e no programa que nos permite calcular raízes de polinômios, cuja listagem segue a seção. Definição 2.63. (Resíduo). Seja f uma função holomorfa em B(a, ρ) \ {a}. O resíduo de f em a, denotado por res(f, a), é o coeficiente b1 do termo 1/(z − a) da série de Laurent de f com centro em a. Vimos que quando temos uma singularidade (por definição, isolada) a de f é γ é um círculo contido no domínio de f e contendo a como a única singularidade de f na região interior 2.5. Resíduos 79 ao círculo, então: Z f (z)dz = γ ∞ X Z (z − a) bm −m + γ m=1 ∞ X Z an n=0 (z − a)n dz γ = 2πib1 = 2πires(f, a). Mais em geral, temos o Teorema 2.64. (Resíduos de Cauchy). Seja f uma função holomorfa num domínio U \ {p1 , p2 , . . . , ps }. Suponha que γ ⊂ U \ {p1 , p2 , . . . , ps } é uma curva de Jordan C 1 por partes, orientada no sentido anti-horário, tal que a região V fechada e limitada por ela está contida em U e contém todos os pontos p1 , . . . , ps . Então, 1 2πi Z f (z)dz = γ s X res(f, pj ). j=1 Prova: Para a prova do teorema, vamos fazer indutivamente a seguinte construção geométrica. Para cada v ∈ S 1 , considere o conjunto do lugar geométrico das semi-retas Sv = {z ∈ C; z = pj + t · v, ∃t ≥ 0, ∃j = 1, . . . , s} Veja que a coleção {Sv , v ∈ S 1 } tem cardinalidade infinita (de fato, não enumerável), e portanto, existe v̂ ∈ S 1 tal que cada semi-reta em Sv̂ intersecta {p1 , . . . , ps } exatamente em um único ponto. Em particular, seja r̂ > 0 o mínimo das distâncias entre cada pj e as demais semi-retas contidas em Sv̂ . Tomando 0 < r ≤ r̂ tal que B(pj , r) ⊂ U , definimos ainda qj como o primeiro ponto sobre a semi-reta {pj +tv̂, t ≥ 0}∩γ, ∀j = 1, . . . , s (tais qj ’s 80 Capítulo 2. Funções Analíticas Figura 4 – Resíduos existem pelo teorema da Alfândega aplicado a cada semi-reta da forma {pj + tv̂, t ≥ 0} e a região V ). Reordenando os pj se necessário, podemos supor que os qj estão ordenados segundo a parametrização de γ, isto é, se ϕ : I → γ parametriza γ e qj = ϕ(tj ), então j < k implica tj < tk . Designemos por q̂j o ponto em que o segmento pj qj intersecta a γj := ∂B(pj , r). Temos então que Z f (z)dz − γ f (z)dz + Z s Z X j=1 f (z)dz − f (z)dz = γj j=1 Z γ s Z X qj q̂j s Z X f (z)dz = γ j=1 γj Z s Z X f (z)dz − f (z)dz − qj q̂j j=1 f (z)dz γj Note que a curva justaposição das curvas das integrais acima é limite de curvas de Jordan em torno de uma região em que f é holomorfa. Por conseguinte, sua integral é zero. Isto 2.5. Resíduos 81 q q q 5 4 1 q q 2 3 p p 5 1 p p 3 2 p 4 Figura 5 – Teorema dos Resíduos implica que Z f (z)dz = γ s Z X j=1 f (z)dz. γj Mas pelo teorema de Laurent (vide página ??), R γj f (z)dz = 2πires(f, pj ), o que conclui a prova. Teorema 2.65. Seja f uma função holomorfa num domínio U \ {p1 , p2 , . . . , ps }. Suponha que γ ⊂ U \ {p1 , p2 , . . . , ps } é uma curva de Jordan C 1 por partes, orientada no sentido anti-horário, tal que a região S, fechada e limitada por ela, está contida em U e contém todos os pontos p1 , . . . , ps . Suponha que todas as singularidades de f em S sejam somente polos. Então Z 0 1 f (z) dz = Z(f ; S) − P (f ; S), 2πi γ f (z) onde Z(f ; S) é o número de zeros de f em S, contadas as suas 82 Capítulo 2. Funções Analíticas multiplicidades, e P (f ; S) é o número de polos de f em S, contadas as suas ordens. Prova: Fixado p ∈ S, as séries de Laurent de f e f 0 em tal ponto se escrevem respectivamente como: f (z) = +∞ X an (z − p)n + n=0 k X bn (z − p)−n n=1 e f 0 (z) = +∞ X n=1 nan (z − p)n−1 + k X −nbn (z − p)−n−1 . n=1 Portanto, se p é um polo de f de ordem k, necessariamente é um polo de ordem k+1 para f 0 . Como se um ponto não for polo de f , não o será de f 0 , isso implica que os polos de f são exatamente os mesmos que os de f 0 . Por outro lado, se p for uma raiz de multiplicidade m para f , ele será um zero de multiplicidade m−1 para f 0 (no caso de m = 1, não será um zero para f 0 ). Isso implica que um ponto p é singularidade para f 0 /f se e só se, p é polo de f (as singularidades de f e f 0 são as mesmas, e por hipótese f não possui outro tipo de singularidade, exceto polo, em S), ou p é zero de f . No caso de p ser um polo de f de ordem k = k(p), temos para z em uma certa vizinhança furada de p: f 0 (z) = f (z) P+∞ Pk nan (z − p)n−1 + n=1 −nbn (z − p)−n−1 = P+∞ Pk n −n n=0 an (z − p) + n=1 bn (z − p) n=1 P+∞ Pk (z − p)−k−1 ( n=1 nan (z − p)n+k + n=1 −nbn (z − p)−n+k = P P +∞ k (z − p)−k n=0 an (z − p)n+k + n=1 bn (z − p)−n+k 2.5. Resíduos 1 · (z − p) 83 Pk−1 P+∞ − n)bk−n (z − p)n + n=k (n − k)an−k (z − p)n . Pk−1 P+∞ n n n=0 bk−n (z − p) + n=k an−k (z − p) n=0 (k Note que denotando por g(z) := k−1 X (k − n)bk−n (z − p)n + n=0 +∞ X (n − k)an−k (z − p)n n=k e por h(z) = k−1 X bk−n (z − p)n + n=0 +∞ X an−k (z − p)n , n=k tanto g como h são não nulas em p, logo seu quociente é holomorfo em uma bola B ⊂ U centrada em p com raio suficientemente pequeno. Donde concluímos que em tal vizinhança de p, f se escreve como f (z) = com g/h holomorfas e g(p) h(p) g(z) 1 · , (z − p) h(z) = −kbk /bk = −k. Logo, res(f, p) = −k, a qual é o simétrico da ordem do polo de f em p. Analogamente, se p é um zero de multiplicidade m = m(p) de f , temos em uma vizinhança furada de p na qual f (z) = (z − p)m−1 · (z − p)m P+∞ n=0 (n + m)an+m (z − P+∞ n n=0 an+m (z − p) p)n = 1 ĝ(z) · , z − p ĥ(z) com ĝ/ĥ holomorfa em uma vizinhança de p e ĝ(p)/ĥ(p) = mam /am = m, implicando que o resíduo res(f 0 /f, p) é igual a multiplicidade de p como zero de f . 84 Capítulo 2. Funções Analíticas Pelo teorema de Resíduos, concluímos que 1 2πi Z γ ŝ X f 0 (z) f0 dz = res( , zj ) = f (z) f j=1 X X m(zj )− zj ,f (zj )=0 k(zj ) = Z(f, S) − P (f, S), zj ,zj é polo de f onde zj são as singularidades de f 0 /f em S. 2.6 Programa de Cálculo de raízes de polinômios Nessa seção, apresentamos um programa em linguagem C por nós escrito que permite entrar com um polinômio e uma região retangular contendo uma possível raiz λ deste, com a finalidade de calcular precisamente λ, usando da teoria vista de Análise Complexa. Note que a mesma região funciona para calcular raízes associadas ao prolongamento de λ com respeito a polinômios com coeficientes suficientemente próximos aos do polinômio inicial. Para compilar o programa, deve-se digitar e salvar em uma mesma pasta os quatro arquivos listados abaixo, e digitar em um terminal (preferencialmente, linux): gcc -o polintip polintip.c -lm Os arquivos que compõem o programa são: • polintip.c (principal) • tipo.h Augusto Armando de Castro Júnior 85 • complex.c • integra.c /∗ Programa de C a l c u l o de R a i z e s de P o l i n o m i o s /∗ Arquivo p r i n c i p a l : p o l i n t i p . c ∗/ /∗ Autor : Augusto Armando de C a s t r o J u n i o r /∗ Data : 06 de f e v e r e i r o de 2 0 1 4 . ∗/ /∗ Entradas da Linha de Comando : − 4 e n t r a d a s da r e g i a o − e , s , w , n − cantos i n f e r i o r esquerdo e superior d i r e i t o ; − Opcao de o p e r a c a o − opc ; − no . de c o e f i c i e n t e s do p r i m e i r o p o l i n o m i o − n l ; − l i s t a de monomios do p r i m e i r o p o l i n o m i o ; − l i s t a de monomios do segundo p o l i n o m i o . ∗/ #include <s t d i o . h> #include < s t d l i b . h> #include <math . h> #i f n d e f r e a l #define r e a l double #endif #i f n d e f PI #define PI 3 . 1 4 1 5 9 2 6 5 3 5 8 9 7 9 3 2 3 8 4 6 2 6 4 3 3 8 3 2 7 9 5 #endif #define TAMAX 64 #define TIPOCOMPLEX #define TIPO struct complex #include " t i p o . h" ∗/ ∗/ 86 Capítulo 2. Funções Analíticas #include " complex . c " #include " i n t e g r a . c " #define SWAP( a , b ) { auxc= ( a ) ; ( a)= ( b ) ; ( b)= auxc ; } struct monom { TIPO v ; int g ; }; struct p o l i n { i n t grau ; i n t tam ; struct monom mon [ TAMAX] ; }; struct f u n r { struct p o l i n pn ; struct p o l i n pd ; }; s t a t i c struct p o l i n ZEROP= { 0 , 1 } ; s t a t i c struct f u n r ZEROR= { { 0 , 1 } , { 0 , 1 , { 1 . 0 , 0 . 0 , 0 } } } ; char _err= 0 ; struct p o l i n sump ( struct struct p o l i n subp ( struct struct p o l i n mulp ( struct struct p o l i n d i v p ( struct struct p o l i n modp ( struct struct f u n r divmodp ( struct struct p o l i n d e r i v p ( struct TIPO homoval ( struct p o l i n TIPO r a i z n e w t ( struct p o l i n struct f u n r p o l i n , struct p o l i n , struct p o l i n , struct p o l i n , struct p o l i n , struct p o l i n , struct polin ); , TIPO ) ; , TIPO ) ; polin polin polin polin polin polin sumf ( struct f u n r , struct f u n r ) ; ); ); ); ); ); ); Augusto Armando de Castro Júnior struct struct struct struct funr s u b f ( struct funr mulf ( struct funr d i v f ( struct f u n r d e r i v f ( struct 87 f u n r , struct f u n r ) ; f u n r , struct f u n r ) ; f u n r , struct f u n r ) ; funr ) ; long d f s o b r e f ( struct p o l i n , TIPO ∗ , TIPO ∗ , TIPO ∗ , long ) ; i n t i g u a l p ( struct p o l i n , struct p o l i n ) ; struct f u n r a t r i p 1 ( struct f u n r ) ; struct f u n r a t r i p 2 ( struct p o l i n , struct p o l i n ) ; i n t main ( i n t a r g c , char ∗ a r g v [ ] ) { char ∗ s t r , opc ; i n t n1 , j , k ; long t ; TIPO z1 , z2 , z [ 1 0 2 4 ] , u p i ; s t a t i c TIPO f u n [ 4 0 9 6 ] , z d f s f [ 4 0 9 6 ] ; struct p o l i n p1 , p2 ; struct monom auxc ; i f ( argc < 6) { printf ( " Programa ␣%s \nUso : ␣%s ␣<e>␣<s>␣<w>␣<n>␣<opc>␣ n1 ␣<p o l 1 >␣<p o l 2 >\ argv [ 0 ] , argv [ 0 ] ) ; exit (0); } z1 . r e= a t o f ( a r g v [ 1 ] ) ; z1 . im= a t o f ( a r g v [ 2 ] ) ; z2 . r e= a t o f ( a r g v [ 3 ] ) ; z2 . im= a t o f ( a r g v [ 4 ] ) ; opc= a r g v [ 5 ] [ 0 ] ; n1= a t o i ( a r g v [ 6 ] ) ; 88 Capítulo 2. Funções Analíticas f o r ( k=0 , j= 7 ; j < 7+ n1 ∗ 3 ; j+= 3 , k++) { p1 . mon [ k ] . v . r e= a t o f ( a r g v [ j ] ) ; p1 . mon [ k ] . v . im= a t o f ( a r g v [ j+ 1 ] ) ; p1 . mon [ k ] . g= a t o i ( a r g v [ j+ 2 ] ) ; i f ( k> 0 ) { i f ( p1 . mon [ k− 1 ] . g> p1 . mon [ k ] . g ) SWAP( p1 . mon [ k − 1 ] , p1 . mon [ k ] ) ; } } p1 . grau= p1 . mon [ k − 1 ] . g ; p1 . tam= n1 ; f o r ( k= 0 ; j < a r g c ; j+= 3 , k++) { p2 . mon [ k ] . v . r e= a t o f ( a r g v [ j ] ) ; p2 . mon [ k ] . v . im= a t o f ( a r g v [ j+ 1 ] ) ; p2 . mon [ k ] . g= a t o i ( a r g v [ j+ 2 ] ) ; } p2 . grau= p2 . mon [ k− 1 ] . g ; p2 . tam= k ; m o s t r a p o l ( " \n␣ p1 : " , p1 , "(% l f +␣ i%l f ) " ) ; m o s t r a p o l ( " \n␣ p2 : " , p2 , "(% l f +␣ i%l f ) " ) ; t= g e r a r e t a n g ( z1 , z2 , z , 4 8 0 ) ; t= d f s o b r e f ( p1 , i f ( t> 0 ) { fun , z d f s f , z, t ); Augusto Armando de Castro Júnior 89 u p i= a t r i c 2 ( 0 . 0 , 1 . 0 / ( − 2 . 0 ∗ PI ) ) ; p u t s ( " \nSem␣ r a i z e s ␣em␣ cima ␣ da ␣ c u r v a ; ␣ i n t e g r a n d o . . . " ) ; z1= mulc ( i n t e g r c (& f u n [ 2 0 4 8 ] , &f u n [ 3 0 0 0 ] , fun , z , 1 , t ) , upi ) ; i f ( z1 . re > 0 . 2 ) { p r i n t f ( " \nHa␣%l 3 . 0 f ␣ ␣ r a i z e s ␣ na ␣ r e g i a o \n" , z1 . r e ) ; z2= mulc ( i n t e g r c (& f u n [ 2 0 4 8 ] , &z d f s f [ 3 0 0 0 ] , zdfsf , z , 1 , t ) , upi ) ; p r i n t f ( " Raiz : ␣%l f +␣ i ␣%l f \n" , z2 ) ; } } else { p r i n t f ( "Achamos␣uma␣ r a i z ␣ na ␣ c u r v a : ␣%l f +␣ i ␣%l f \n" , z [ 0 ] ) ; } switch ( opc ) { case ’ . ’ : p1 = mulp ( p1 , p2 ) ; s t r = " produto " ; break ; case ’+ ’ : p1 = sump ( p1 , p2 ) ; s t r = "soma" ; break ; case ’ / ’ : p1 = d i v p ( p1 , p2 ) ; str = " divisao " ; break ; case ’− ’ : p1 = subp ( p1 , p2 ) ; 90 Capítulo 2. Funções Analíticas str = " diferenca " ; break ; case ’ d ’ : p1= d e r i v p ( p1 ) ; s t r= " d e r i v a d a " ; break ; case ’ a ’ : p r i n t f ( " A v a l i a d o ␣em␣%l f +i ␣%l f ␣ o ␣ p o l i n o m i o ␣ deu : ␣ ␣ ␣ ␣ ␣ ␣%l f +i ␣%l f \n ; ␣uma␣ r a i z ␣ eh ␣p(% l f +i ␣%l f )=␣%l f +i ␣%l f \n" , p2 . mon [ 0 ] . v , homoval ( p1 , p2 . mon [ 0 ] . v ) , r a i z n e w t ( p1 , p2 . mon [ 0 ] . v ) , homoval ( p1 , r a i z n e w t ( p1 , p2 . mon [ 0 ] . v ) ) ) ; exit (1); default : p u t s ( " C a l c u l o ␣ de ␣ r a i z e s ␣ r e a l i z a d o . " ) ; } m o s t r a p o l ( " \nO␣ r e s u l t a d o ␣ deu : ␣ \n" , p1 , "(% l f +␣ i%l f ) " ) ; puts ( "" ) ; } m o s t r a p o l ( char ∗ s t r , struct p o l i n p , char ∗ s t r f ) { int j ; char s [ 2 5 6 ] ; printf ( str ); f o r ( j= 0 ; j < ( p . tam− 1 ) ; j ++) { sprintf (s , ( p . mon [ j ] . g== 0 ) ? "%s+␣ " : "%sX^%d+␣ " , s t r f , p . mon [ j ] . g ) ; p r i n t f ( s , p . mon [ j ] . v ) ; } s p r i n t f ( s , "%sX^%d" , s t r f , p . mon [ p . tam− 1 ] . g ) ; p r i n t f ( s , p . mon [ p . tam− 1 ] . v ) ; Augusto Armando de Castro Júnior 91 } m o s t r a f u n ( char ∗ s t r , struct f u n r r , char ∗ s t r f ) { int j ; char s [ 2 5 6 ] ; printf ( str ); printf ("(" ); f o r ( j= 0 ; j < ( r . pn . tam− 1 ) ; j ++) { sprintf (s , ( r . pn . mon [ j ] . g== 0 ) ? "%s+␣ " : "%sX^%d+␣ " , s t r f , r . pn . mon [ j ] . g ) ; p r i n t f ( s , r . pn . mon [ j ] . v ) ; } s p r i n t f ( s , "%sX^%d ) / " , s t r f , r . pn . mon [ r . pn . tam− 1 ] . g ) ; p r i n t f ( s , r . pn . mon [ r . pn . tam− 1 ] . v ) ; printf ("(" ); f o r ( j= 0 ; j < ( r . pd . tam− 1 ) ; j ++) { sprintf (s , ( r . pd . mon [ j ] . g== 0 ) ? "%s+␣ " : "%sX^%d+␣ " , s t r f , r . pd . mon [ j ] . g ) ; p r i n t f ( s , r . pd . mon [ j ] . v ) ; } s p r i n t f ( s , "%sX^%d ) " , s t r f , r . pd . mon [ r . pd . tam− 1 ] . g ) ; p r i n t f ( s , r . pd . mon [ r . pd . tam− 1 ] . v ) ; } struct p o l i n mdcp ( struct p o l i n p , struct p o l i n q ) { struct p o l i n s o b r e = p ; struct p o l i n sub = q ; struct p o l i n r e s t o ; 92 Capítulo 2. Funções Analíticas while ( i g u a l p ( r e s t o= { s o b r e = sub ; sub = r e s t o ; } return ( sub ) ; modp ( s o b r e , sub ) , ZEROP) ) } struct f u n r a t r i p 2 ( struct p o l i n n , struct p o l i n d ) { struct f u n r r ; struct p o l i n m; i f ( i g u a l p ( d , ZEROP) ) { _err = 1 ; return (ZEROR) ; } m = mdcp ( n , d ) ; r . pn= d i v p ( n , m) ; r . pd= d i v p ( d , m) ; return ( r ) ; } struct f u n r a t r i p 1 ( struct f u n r r ) { struct p o l i n m; i f ( i g u a l p ( r . pd , ZEROP) ) { _err = 1 ; r . pn= ZEROP; return ( r ) ; } m = mdcp ( r . pn , r . pd ) ; r . pn = d i v p ( r . pn , m) ; Augusto Armando de Castro Júnior 93 r . pd = d i v p ( r . pd , m) ; return ( r ) ; } struct p o l i n mulp ( struct p o l i n p1 , struct p o l i n p2 ) { struct p o l i n p ; i n t ind , i , j , k ; i n t n , m= p1 . grau+ p2 . grau ; p= ZEROP; f o r ( n= 0 , k= 0 ; n<= m; n++) { i n d= p2 . tam− 1 ; f o r ( i= 0 ; ( i < p1 . tam ) && ( p1 . mon [ i ] . g<= n ) ; i ++) { /∗ Obs : a b u s c a a b a i x o pode s e r o t i m i z a d a , usando b s e a r c h . ∗/ f o r ( j= i n d ; ( j>= 0 ) && ( p2 . mon [ j ] . g > ( n− p1 . mon [ i ] . g ) ) ; j −−); i f ( p2 . mon [ j ] . g== ( n− p1 . mon [ i ] . g ) ) { p . mon [ p . tam ] . g= n ; p . mon [ p . tam ] . v= SM( p . mon [ p . tam ] . v , ML( p1 . mon [ i ] . v , p2 . mon [ j ] . v ) ) ; i n d= j ; } } i f ( ! IGUAL( p . mon [ p . tam ] . v , ZERO) ) { p . tam++; p . grau= n ; } } return ( p ) ; 94 Capítulo 2. Funções Analíticas } struct p o l i n sump ( struct p o l i n p1 , struct p o l i n p2 ) { struct p o l i n p ; i n t m, n , k , kax ; kax= p1 . tam+ p2 . tam ; f o r ( k= m= n= 0 ; (m< p1 . tam)&& ( n< p2 . tam)&& ( k< kax ) ; ) { i f ( p1 . mon [ m ] . g== p2 . mon [ n ] . g ) { p . mon [ k ] . v= SM( p1 . mon [ m ] . v , p2 . mon [ n ] . v ) ; i f ( ! IGUAL( p . mon [ k ] . v , ZERO) ) { p . mon [ k ] . g= p1 . mon [ m ] . g ; k++; } m++; n++; } else { i f ( p1 . mon [ m ] . g< p2 . mon [ n ] . g ) { p . mon [ k ] . g= p1 . mon [ m ] . g ; p . mon [ k ] . v= p1 . mon [ m ] . v ; m++; } else { p . mon [ k ] . g= p2 . mon [ n ] . g ; p . mon [ k ] . v= p2 . mon [ n ] . v ; n++; Augusto Armando de Castro Júnior 95 } k++; } } f o r ( ; m< p1 . tam ; m++, k++) { p . mon [ k ] . g= p1 . mon [ m ] . g ; p . mon [ k ] . v= p1 . mon [ m ] . v ; } f o r ( ; n< p2 . tam ; n++, k++) { p . mon [ k ] . g= p2 . mon [ n ] . g ; p . mon [ k ] . v= p2 . mon [ n ] . v ; } p . grau= p . mon [ k− 1 ] . g ; p . tam= k ; return ( p ) ; } struct p o l i n subp ( struct p o l i n p1 , struct p o l i n p2 ) { struct p o l i n p ; i n t m, n , k , kax ; kax= p1 . tam+ p2 . tam ; f o r ( k= m= n= 0 ; (m< p1 . tam)&& ( n< p2 . tam)&& ( k< kax ) ; ) { i f ( p1 . mon [ m ] . g== p2 . mon [ n ] . g ) { p . mon [ k ] . v= SB( p1 . mon [ m ] . v , p2 . mon [ n ] . v ) ; 96 Capítulo 2. Funções Analíticas if ( ! IGUAL( p . mon [ k ] . v , ZERO) ) { p . mon [ k ] . g= p1 . mon [ m ] . g ; k++; } m++; n++; } else { i f ( p1 . mon [ m ] . g< p2 . mon [ n ] . g ) { p . mon [ k ] . g= p1 . mon [ m ] . g ; p . mon [ k ] . v= p1 . mon [ m ] . v ; m++; } else { p . mon [ k ] . g= p2 . mon [ n ] . g ; p . mon [ k ] . v= SB(ZERO, p2 . mon [ n ] . v ) ; n++; } k++; } } f o r ( ; m< p1 . tam ; m++, k++) { p . mon [ k ] . g= p1 . mon [ m ] . g ; p . mon [ k ] . v= p1 . mon [ m ] . v ; } f o r ( ; n< p2 . tam ; n++, k++) { p . mon [ k ] . g= p2 . mon [ n ] . g ; Augusto Armando de Castro Júnior 97 p . mon [ k ] . v= SB(ZERO, p2 . mon [ n ] . v ) ; } p . grau= p . mon [ k− 1 ] . g ; p . tam= k ; return ( p ) ; } struct p o l i n d i v p ( struct p o l i n p1 , struct p o l i n p2 ) { struct p o l i n p , paux , rp ; int gr ; i f ( p1 . grau< p2 . grau ) return (ZEROP ) ; p= ZEROP; rp= p1 ; do { paux . grau= paux . mon [ 0 ] . g= rp . grau− p2 . grau ; paux . tam= 1 ; paux . mon [ 0 ] . v= DV( ( rp . mon [ ( rp . tam)− 1 ] . v ) , ( p2 . mon [ ( p2 . tam)− 1 ] . v ) ) ; p= sump ( p , paux ) ; g r= rp . grau ; rp= subp ( rp , mulp ( p2 , paux ) ) ; i f ( rp . grau== g r ) { rp . tam−−; rp . grau= rp . mon [ rp . tam− 1 ] . g ; } } while ( rp . grau>= p2 . grau ) ; return ( p ) ; } 98 Capítulo 2. Funções Analíticas struct p o l i n modp ( struct p o l i n p1 , struct p o l i n p2 ) { struct p o l i n p , paux , rp ; i f ( p1 . grau< p2 . grau ) return ( p1 ) ; rp= p1 ; p= ZEROP; do { paux . grau= paux . mon [ 0 ] . g= rp . grau− p2 . grau ; paux . tam= 1 ; paux . mon [ 0 ] . v= DV( rp . mon [ rp . tam− 1 ] . v , p2 . mon [ p2 . tam− 1 ] . v ) ; p= sump ( p , paux ) ; rp= subp ( rp , mulp ( p2 , paux ) ) ; } while ( rp . grau>= p2 . grau ) ; return ( rp ) ; } i n t i g u a l p ( struct p o l i n p1 , struct p o l i n p2 ) { int i ; i f ( p1 . grau != p2 . grau ) return ( 0 ) ; i f ( p1 . tam!= p2 . tam ) return ( 0 ) ; f o r ( i= 0 ; i < p1 . tam ; i ++) i f ( ( p1 . mon [ i ] . g != p2 . mon [ i ] . g ) | | ( ! IGUAL( p1 . mon [ i ] . v , p2 . mon [ i ] . v ) ) ) Augusto Armando de Castro Júnior return ( 0 ) ; return ( 1 ) ; } struct f u n r mulf ( struct f u n r r1 , struct f u n r r 2 ) { struct f u n r r ; struct p o l i n m; m = mdcp ( r 1 . pn , r 2 . pd ) ; r 1 . pn= d i v p ( r 1 . pn , m) ; r 2 . pd= d i v p ( r 2 . pd , m) ; m = mdcp ( r 1 . pd , r 2 . pn ) ; r 1 . pd= d i v p ( r 1 . pd , m) ; r 2 . pn= d i v p ( r 2 . pn , m) ; r . pn = mulp ( r 1 . pn , r 2 . pn ) ; r . pd = mulp ( r 1 . pd , r 2 . pd ) ; return ( r ) ; } struct f u n r sumf ( struct f u n r r1 , struct f u n r r 2 ) { struct f u n r r ; struct p o l i n m, n ; n = sump ( mulp ( r 1 . pn , r 2 . pd ) , mulp ( r 2 . pn , r 1 . pd ) ) ; m = mdcp ( n , r 1 . pd ) ; n= d i v p ( n , m) ; r . pd = d i v p ( r 1 . pd , m) ; m = mdcp ( n , r 2 . pd ) ; r . pn= d i v p ( n , m) ; r . pd= mulp ( r . pd , d i v p ( r 2 . pd , m) ) ; return ( r ) ; } struct f u n r d i v f ( struct f u n r r1 , struct f u n r r 2 ) 99 100 Capítulo 2. Funções Analíticas { return ( mulf ( r1 , a t r i p 2 ( r 2 . pd , r 2 . pn ) ) ) ; } struct f u n r s u b f ( struct f u n r r1 , struct f u n r r 2 ) { return ( sumf ( r1 , a t r i p 2 ( subp (ZEROP, r 2 . pn ) , r 2 . pd ) ) ) ; } struct p o l i n d e r i v p ( struct p o l i n p ) { int i , j ; i f ( p . grau ) p . grau −−; f o r ( i= j= 0 ; j < p . tam ; j ++) { i f ( p . mon [ j ] . g== 0 ) continue ; p . mon [ i ] . v= MLR( p . mon [ j ] . v , ( r e a l ) ( p . mon [ j ] . g ) ) ; p . mon [ i ++]. g= p . mon [ j ] . g− 1 ; } p . tam= i ; return ( p ) ; } struct f u n r d e r i v f ( struct f u n r r ) { Augusto Armando de Castro Júnior 101 struct f u n r f; struct p o l i n m; f . pn= subp ( mulp ( d e r i v p ( r . pn ) , r . pd ) , mulp ( d e r i v p ( r . pd ) , r . pn ) ) ; f . pd= mulp ( r . pd , r . pd ) ; m = mdcp ( f . pd , f . pn ) ; f . pd= d i v p ( f . pd , m) ; f . pn= d i v p ( f . pn , m) ; return ( f ) ; } /∗ Funcoes para d i a g n o s t i c a r e x i s t e n c i a de r a i z e s em uma r e g i a o ∗/ long d f s o b r e f ( struct p o l i n p , TIPO ∗ d f s f , TIPO ∗ z d f s f , TIPO ∗ z , long t ) { long i , j ; TIPO num , den ; struct p o l i n drv ; drv= d e r i v p ( p ) ; f o r ( i= 0 ; i < t ; i ++) { num= homoval ( drv , z [ i ] ) ; den= homoval ( p , z [ i ] ) ; i f ( ! IGUAL( den , ZERO) ) { d f s f [ i ]= DV(num , den ) ; z d f s f [ i ]= ML( d f s f [ i ] , z [ i ] ) ; } 102 Capítulo 2. Funções Analíticas else { ∗ d f s f= z [ i ] ; return ( 0 ) ; } } return ( i ) ; } TIPO homoval ( struct p o l i n p , TIPO x ) { int j , k ; TIPO y ; f o r ( j= p . tam− 1 , y= p . mon [ j ] . v ; j > 0 ; ) { f o r ( k= p . mon [ j ] . g− p . mon [ j − 1 ] . g ; k> 0 ; k−−) { y= ML( y , x ) ; } y= SM( y , p . mon[−− j ] . v ) ; } f o r ( k= 0 ; k< p . mon [ y= ML( y , x ) ; return ( y ) ; } 0 ] . g ; k++) Augusto Armando de Castro Júnior 103 long c u r v a p l p ( struct p o l i n p , TIPO ∗ p l s p , TIPO ∗ z p l s p , TIPO ∗ curv , long n ) { struct p o l i n d e r a ; r e a l eps ; TIPO y ; long j= 0L ; e p s= (AB( c u r v [ 0]) > 0 . 1 ) ? 0 . 0 0 0 0 0 0 0 0 0 1 :AB( c u r v [ 0 ] ) / 1 0 0 0 0 0 0 0 0 . 0 ; d e r a= d e r i v p ( p ) ; f o r ( j= 0 ; j < n ; j ++) { y= homoval ( p , c u r v [ j ] ) ; i f (AB( y)> e p s ) { p l s p [ j ]= DV( homoval ( dera , c u r v [ j ] ) , y ) ; z p l s p [ j ]= ML( c u r v [ j ] , p l s p [ j ] ) ; } else { p l s p [ 0]= c u r v [ j ] ; return ( 0L ) ; } } return ( j ) ; } TIPO r a i z n e w t ( struct p o l i n p , TIPO x0 ) { struct p o l i n d e r a ; r e a l eps ; TIPO x1 , aux ; i n t j= 0 ; e p s= (AB( x0)> 0 . 1 ) ? 0 . 0 0 0 0 0 0 0 0 0 1 :AB( x0 ) / 1 0 0 0 0 0 0 0 0 . 0 ; d e r a= d e r i v p ( p ) ; 104 Capítulo 2. Funções Analíticas do { x1= x0 ; aux= homoval ( dera , x0 ) ; i f (AB( aux)> e p s ) x0= SB( x0 , DV( homoval ( p , x0 ) , aux ) ) ; else { i f (AB( homoval ( p , x0 )) < e p s ) return ( x0 ) ; else { x0= SM( x0 , UM) ; } } j ++; } while ( (AB(SM( x1 , x0))>= e p s ) && ( j < 1 0 0 0 0 ) ) ; return ( x0 ) ; } /∗−−−− Arquivo t i p o . h −−−−−−−−−−−∗/ /∗ N e s t e a r q u i v o , d i f e r e n t e s t i p o s e macros c o r r e s p o n d e n t e s sao d e f i n i d o s ∗/ #i f d e f TIPOREAL #define SM( x , y ) ( ( x)+ ( y ) ) #define SB( x , y ) ( ( x)− ( y ) ) #define ML( x , y ) ( ( x )∗ ( y ) ) #define DV( x , y ) ( ( x )/ ( y ) ) #define AT( x , y ) ( ( x)= ( y ) ) Augusto Armando de Castro Júnior #define #define #define #define #define #define #define #define #define ATR( x , y ) ( ( x)= ( y ) ) IGUAL( x , y ) ( ( x)==(y ) ) MEN( x , y ) ( ( x)< ( y ) ) MENI( x , y ) ( ( x)<= ( y ) ) TAM sizeof ( r ea l ) ZERO ( ( r e a l ) ( 0 . ) ) UM (( real )(1.)) STR " %8.3 l f ␣ " TIP ( x ) ( x ) #endif #i f d e f TIPORACIONAL #define SM( x , y ) soma ( ( x ) , ( y ) ) #define SB( x , y ) suba ( ( x ) , ( y ) ) #define ML( x , y ) mula ( ( x ) , ( y ) ) #define MLR( x , y ) mula ( ( x ) , a p r o x r e a l ( y ) ) #define DV( x , y ) divi ((x) , (y)) #define AT( x , y ) ( ( x)= ( y ) ) #define ATR( x , y ) ( x)= a t r i b 1 ( y ) #define IGUAL( x , y ) i g u a l ( ( x ) , ( y ) ) #define MEN( x , y ) menor ( ( x ) , ( y ) ) #define MENI( x , y ) menorigual ( ( x ) , ( y ) ) #define TAM s i z e o f ( struct r a c i o n a l ) #define STR "%6l d /%6 l d ␣ " #define TIP ( x ) aproxreal (x) #define ZERO z e r a #define UM uma #endif #i f d e f TIPOCOMPLEX #define SM( x , y ) #define SB( x , y ) #define ML( x , y ) #define MLR( x , y ) #define DV( x , y ) #define AT( x , y ) somc ( ( x ) , ( y ) ) subc ( ( x ) , ( y ) ) mulc ( ( x ) , ( y ) ) mulr ( ( x ) , ( y ) ) divc (( x ) , (y )) ( ( x)= ( y ) ) 105 106 #define #define #define #define #define #define #define #endif Capítulo 2. Funções Analíticas ATR( x , y ) ( x)= a t r i c 1 ( y ) IGUAL( x , y ) i g u a l c ( ( x ) , ( y ) ) TAM s i z e o f ( struct complex ) STR "%l f +␣ i ␣%l f " TIP ( x ) atric2 ((x) , 0.0) ZERO z e r c UM umc /∗−−−−− Arquivo complex . c −−−−−−−−−−∗/ /∗ Programa de numeros c o m p l e x o s ∗/ /∗ N e s t e a r q u i v o , implementamos numeros complexos , i n d e p e n d e n t e da implementacao j a e x i s t e n t e em Ansi−C99 ∗/ #include <s t d i o . h> #include < s t d l i b . h> #include <math . h> #i f n d e f r e a l #define r e a l double #endif #i f n d e f PI #define PI 3 . 1 4 1 5 9 2 6 5 3 5 8 9 7 9 3 2 3 8 4 6 2 6 4 3 3 8 3 2 7 9 5 #endif struct complex { re al re ; r e a l im ; }; char e r r =0; s t a t i c struct complex z e r c= { 0 . 0 , 0 . 0 } ; s t a t i c struct complex umc= { 1 . 0 , 0 . 0 } ; Augusto Armando de Castro Júnior struct struct struct struct struct complex complex complex complex complex somc ( struct subc ( struct mulc ( struct mulr ( struct d i v c ( struct complex complex complex complex complex 107 , , , , , struct struct struct real ); struct complex ) ; complex ) ; complex ) ; complex ) ; r e a l c c a b s ( struct complex ) ; int i g u a l c ( struct complex z1 , struct complex z2 ) { return ( ( z1 . r e== z2 . r e)&& ( z1 . im== z2 . im ) ) ; } #define atric1 ( z) (z) long g e r a c u r v a f e c ( struct complex , struct complex , struct complex ∗ , long ) ; struct complex a t r i c 2 ( r e a l , r e a l ) ; struct complex a t r i c 2 ( r e a l re , r e a l im ) { struct complex z ; z . r e= r e ; z . im= im ; return ( z ) ; } struct complex mulc ( struct complex z1 , struct complex z2 ) { struct complex z ; z . r e= z1 . r e ∗ z2 . r e − z1 . im∗ z2 . im ; z . im= z1 . r e ∗ z2 . im + z1 . im∗ z2 . r e ; return ( z ) ; } struct complex mulr ( struct complex z1 , r e a l r ) 108 Capítulo 2. Funções Analíticas { z1 . r e ∗= r ; z1 . im∗= r ; return ( z1 ) ; } struct complex somc ( struct complex z1 , struct complex z2 ) { struct complex z ; z . r e= z1 . r e + z2 . r e ; z . im= z1 . im + z2 . im ; return ( z ) ; } struct complex d i v c ( struct complex z1 , struct complex z2 ) { struct complex z ; r e a l m= z2 . r e ∗ z2 . r e+ z2 . im∗ z2 . im ; i f (m != 0 . 0 ) { z2 . r e /= m; z2 . im/= −m; z . r e= z1 . r e ∗ z2 . r e − z1 . im∗ z2 . im ; z . im= z1 . r e ∗ z2 . im + z1 . im∗ z2 . r e ; return ( z ) ; } e r r= 1 ; return ( z2 ) ; } struct complex subc ( struct complex z1 , struct complex z2 ) { z1 . re−= z2 . r e ; z1 . im−= z2 . im ; return ( z1 ) ; } Augusto Armando de Castro Júnior 109 r e a l c c a b s ( struct complex z ) { return ( s q r t ( z . r e ∗ z . r e+ z . im∗ z . im ) ) ; } long g e r a c u r v a f e c ( struct complex z1 , struct complex z2 , struct complex ∗ z , long p ) { r e a l r1 , r2 , x , y ; i n t j , k , l , m; p−= p%4; i f ( p<= 0 ) return ( 0 ) ; r 1= f a b s ( z1 . re− z2 . r e ) ; r 2= f a b s ( z1 . im− z2 . im ) ; r 1= ( r1>= r 2 ) ? r 1 / 4 . 0 : r 2 / 4 . 0 ; r 2= ( 8 . 0 ∗ r 1 ) / ( r e a l ) ( p ) ; p+= 4 ; f o r ( j= 0 , l= p / 4 , k= ( 3 ∗ p)/4− 1 , m= p− 1 , x= z1 . re− r1 , y= z1 . im− r 1 ; x<= ( z1 . r e+ r 1 ) ; x+= r2 , y+= r2 , j ++, l ++, k−−, m−−) { z [ j ] . r e= z [ k ] . r e= x ; z [ j ] . im= z1 . im− r 1 ; z [ k ] . im= z1 . im+ r 1 ; z [ l ] . im= z [ m ] . im= y ; z [ l ] . r e= z1 . r e+ r 1 ; z [ m ] . r e= z1 . re− r 1 ; } 110 Capítulo 2. Funções Analíticas f o r ( ; j<= ( p / 4 ) ; j ++) { z [ j ] . r e= z1 . r e+ r 1 ; z [ j ] . im= z1 . im− r 1 ; } f o r ( ; k>= p / 2 ; k−−) { z [ k ] . r e= z1 . r e+ r 1 ; z [ k ] . im= z1 . im+ r 1 ; } f o r ( ; m>= ( 3 ∗ p ) / 4 ; m−−) { z [ m ] . im= z1 . im+ r 1 ; z [ m ] . r e= z1 . re− r 1 ; } z [ p+ 1]= z [ p]= z [ 0 ] ; return ( p ) ; } long g e r a r e t a n g ( struct complex z1 , struct complex z2 , struct complex ∗ z , long p ) { r e a l r , r i , d , dx , dy , x , y ; i n t j , k , l , m; p−= p%4; i f ( p<= 0 ) return ( 0 ) ; i f ( z1 . re > z2 . r e ) { r= z2 . r e ; z2 . r e= z1 . r e ; Augusto Armando de Castro Júnior z1 . r e= r ; } r= z2 . re − z1 . r e ; i f ( z1 . im> z2 . im ) { r i= z2 . im ; z2 . im= z1 . im ; z1 . im= r i ; } r i= z2 . im− z1 . im ; d= ( 2 . 0 ∗ ( r+ r i ) ) / ( ( r e a l ) p ) ; dx= r / c e i l ( r /d ) ; k= ( i n t ) ( c e i l ( r /dx)+ 0 . 1 ) ; dy= r i / c e i l ( r i /d ) ; m= ( i n t ) ( c e i l ( r i /dy)+ 0 . 1 ) ; f o r ( j= 0 , l= k+ m, x= z1 . r e ; x<= z2 . r e ; x+= dx , j ++, l ++) { z [ j ] . r e= x ; z [ j ] . im= z1 . im ; z [ l ] . im= z2 . im ; z [ l ] . r e= z1 . r e+ ( z2 . re− x ) ; } f o r ( y= z1 . im ; y<= z2 . im ; y+= dy , j ++, l ++) { z [ j ] . r e= z2 . r e ; z [ j ] . im= y ; z [ l ] . r e= z1 . r e ; z [ l ] . im= z1 . im+ ( z2 . im− y ) ; 111 112 Capítulo 2. Funções Analíticas } p= l ; z [ p+ 1]= z [ p]= z [ 0]; return ( p ) ; } /∗−−− Arquivo i n t e g r a . c −−−−−−−−−∗/ #define GAUX( i , j ) gaux [ ( i ) ∗ ( n ) + ( j ) ] #i f d e f GRAFICO #define G( i , j ) g [ ( i ) ∗ ( n+ 1 ) + ( j+ 1 ) ] #define GX( i ) g [ ( i ) ∗ ( n+ 1 ) ] #e l s e #define G( i , j ) g [ ( i ) ∗ ( n ) + ( j ) ] #endif #i f n d e f TIPO #define TIPO r e a l #endif /∗ I n t e g r a c a o por T r a p e z i o ∗/ TIPO i n t e g r ( r e a l xa , r e a l x , TIPO ∗ya , TIPO ∗g , TIPO ∗ gaux , i n t n , long p ) { long k , l ; TIPO sum ; r e a l r= ( x− xa ) / ( r e a l ) ( p ) , r r= f a b s ( r ) / 2 . 0 ; f o r ( k= 0 ; k< n ; k++) { GAUX( p+1 , k)= ZERO; f o r (G( 0 , k)= sum= ya [ k ] , l= 0 ; l < p ; l ++) Augusto Armando de Castro Júnior 113 { sum= SM( sum , MLR(SM(GAUX( l , k ) , GAUX( l+ 1 , k ) ) , r r ) ) ; G( l+ 1 , k)= sum ; } } return ( sum ) ; } /∗ I n t e g r a c a o C u r v i l i n e a ( r e a l ou complexa ) t i p o T r a p e z i o ∗/ TIPO i n t e g r c ( TIPO ∗ya , TIPO ∗g , TIPO ∗ gaux , TIPO ∗ curv , i n t n , long p ) { long k , l ; TIPO sum ; f o r ( k= 0 ; k< n ; k++) { GAUX( p+ 1 , k)= GAUX( p , k)= GAUX( p− 1 , k ) ; f o r (G( 0 , k)= sum= ya [ k ] , l= 0 ; l < p ; l ++) { sum= SM( sum , ML(MLR(SM(GAUX( l , k ) , GAUX( l+ 1 , k ) ) , 0 . 5 ) , SB( c u r v [ l + 1 ] , c u r v [ l ] ) ) ) ; G( l+ 1 , k)= sum ; } } return ( sum ) ; } 114 Capítulo 2. Funções Analíticas Figura 6 – Execução do programa de Cálculo de Raízes. Exemplos de uso do programa polintip, com conferência dos valores calculados. 2.7. Exercícios 115 2.7 Exercícios 1. Verifique se as seguintes séries convergem: a) P 1 n2 b) P 1 n c) P 1 n! 2. Mostre que se (zn ), zn > 0 é tal que existe o limn→+∞ √ c, então existe limn→+∞ n zn = c. zn+1 zn = 3. Calcule os limsups abaixo (obs.: algum pode ser +∞)): a) lim sup √ n 1 √ b) lim sup n c, c > 0 p c) lim sup n 1/n p d) lim sup n 1/n2 √ n e) lim sup n2 √ f) lim sup n n! p g) lim sup n n!/nn √ h) lim sup n an , onde (an ) é a sequência de Fibonacci, definida por a1 := 1, a2 := 1 e an+1 = an + an−1 , ∀n > 2. 4. Prove que um espaço vetorial normado E é completo se, e só se, toda série absolutamente convergente em E é convergente. 5. Seja (an ) : N → E uma sequência tomando valores em um espaço de Banach E. Uma reenumeração de (an ) é uma 116 Capítulo 2. Funções Analíticas sequência (bn ), onde bn = aϕ(n) , ∀n ∈ N. Prove que se (bn ) P é uma reenumeração de (an ), e an é absolutamente conP vergente, então bn é convergente ao mesmo valor limite P de an . 6. Mostre que toda sequência convergente a um ponto em um espaço métrico X é de Cauchy. 7. Seja X um espaço métrico, e x ∈ X. Mostre que toda sequência de Cauchy (xn ), xn ∈ X com subsequência convergente a x converge ela mesma a x. 8. Seja E um espaço de Banach e seja C ⊂ L(E) a coleção das aplicações lineares invertíveis de E em E. Mostre que C é um aberto e que a aplicação Inv : C → C dada por Inv(A) := A−1 é contínua. 9. Seja f : C \ {0} → C dada por f (z) := 1/z. Seja γ o círculo R de raio r > 0 e centro na origem. Calcule γ f (z)dz. 10. Seja f : C \ {0} → C dada por f (z) := 1 zn , n > 1. Seja γ o R f (z)dz. γ círculo de raio r > 0 e centro na origem. Calcule 11. Seja γ ⊂ C uma curva homeomorfa a um círculo e p : C → C um polinômio tal que sem raízes em γ. Mostre que Z 1 p0 (z)/p(z)dz = Z(p, γ), 2πi γ onde Z(p, γ) é o número de raízes de p na região interior a γ, contadas as suas multiplicidades. 12. Use o exercício anterior para concluir que a aplicação que atribui a um polinômio complexo de grau n, suas n raízes, é contínua. 2.7. Exercícios 117 13. Seja γ ⊂ C uma curva homeomorfa a um círculo e p : C → C um polinômio tal que sem raízes em γ. Suponha que Z 1 p0 (z)/p(z)dz = 1. 2πi γ Mostre que 1 2πi Z zp0 (z)/p(z)dz = z0 , γ onde z0 é a única raiz contida na região limitada que tem γ como fronteira. 119 3 Funções de Operador Neste capítulo, nós nos aprofundaremos no estudo de operadores lineares em dimensão qualquer, usando para isso a teoria de Análise Complexa vista anteriormente. Como um subproduto, ao final escrevemos um programa que permite calcular um autoespaço (generalizado) sem conhecer com precisão o autovalor associado, sabendo-se somente que este se acha em uma certa região limitada. Embora tal técnica, hoje, possa não ser muito eficiente comparada às demais disponíveis, com o avanço da computação quântica poderá se tornar competitiva dada a sua estabilidade. 3.1 Funções analíticas de operadores Definição 3.1. (Espectro de um operador linear contínuo.) Seja E um espaço vetorial normado complexo e seja A : E → E um operador linear contínuo. O espectro de A é o conjunto sp(A) := {λ ∈ C, (λI − A) não possui inversa contínua}. Observação 3.2. Devido ao Teorema da Aplicação Aberta de Análise Funcional, se E é um espaço de Banach e A ∈ L(E), então se A for invertível, sua inversa é automaticamente contínua. Dessa forma, se E é um espaço de Banach e A : E → E é linear contínua, seu espectro consiste do conjunto dos pontos λ ∈ C tal que (A − λI) não é injetiva ou não é sobrejetiva (a inversa de (A − λI) não existe). Em dimenão finita, todo opera- 120 Capítulo 3. Funções de Operador dor linear é automaticamente contínuo, e nesse caso particular todas as menções à continuidade na definição de espectro são redundantes. Estudaremos uma caracterização do espectro de A : E → E quando A ∈ L(E), com E um espaço de Banach complexo e L(E) sendo o espaço de aplicações lineares contínuas de E em E. A idéia para isso será estudarmos res(A) := sp(A)c , também conhecido como o conjunto resolvente de A. Ora, para z ∈ res(A), sabemos que é um isomorfismo linear (contínuo) o operador (zI − A). Lembramos que se E é um espaço de Banach, L(E) também é um espaço de Banach com a conhecida norma do Operador. Para T ∈ L(E), sua norma é: kT kop = sup {kT (v)k} = Lip(T ). v∈E;kvk=1 Antes de tudo, observemos que se A é contínuo, o conjunto resolvente de A é não vazio, e que o espectro é limitado. De fato, se |λ| > kAkop , pelo Teorema da perturbação da Identidade (λI − A) = λ · (I − A/λ) é isomorfismo . Pelo Teorema da Perturbação do Isomorfismo, também temos que res(A) é aberto - logo sp(A) é compacto, visto que é um subconjunto fechado e limitado de C. Consideraremos então a aplicação resolvente ρ : res(A) → L(E) dada por ρ(z) := (zI − A)−1 . Já vimos acima que que res(A) é aberto. Mostraremos que esta aplicação é analítica, e adaptaremos o que conhecemos sobre raio de convergência de série de Augusto Armando de Castro Júnior 121 potências. Para provarmos que ρ é holomorfa (possui derivada holomorfa) usaremos a muito simples Proposição 3.3. (Equação do resolvente.) É válida a seguinte identidade: ρ(λ) − ρ(µ) = (µ − λ)ρ(λ)ρ(µ). Prova: De fato, ρ(λ) − ρ(µ) = ρ(λ)ρ(µ)(µI − A)(λI − A)(ρ(λ) − ρ(µ)) = ρ(λ)ρ(µ)(µI − A)(I − λρ(µ) + Aρ(µ)) = ρ(λ)ρ(µ)(µI − A − λI + A) = (µ − λ)ρ(λ)ρ(µ). Corolário 3.4. Dada uma aplicação linear A ∈ L(E), a aplicação resolvente associada ρ : res(A) → L(E) é holomorfa em res(A), com derivada holomorfa em λ igual a −ρ(λ)2 . Prova: Como a inversão de operadores é uma aplicação contínua em um aberto L(E), segue -se que ρ é contínua como composta de aplicações contínuas. Temos portanto que ρ0 (λ) = lim µ→λ ρ(µ) − ρ(λ) = lim −ρ(µ)ρ(λ) = −ρ(λ)2 . µ→λ λ−µ 122 Capítulo 3. Funções de Operador Nosso próximo passo é demonstrar que o espectro de um operador contínuo é não vazio. Teorema 3.5. Dada uma aplicação linear A ∈ L(E), o espectro de A é não vazio, e o raio espectral r(A) := sup |sp(A)| é igual p a limn→+∞ n kAn k. Prova: Do que vimos acima, está claro que para z 6= 0 para que (zI − A) seja invertível é necessário e suficiente que (I − A/z) seja invertível. Inspirados na série geométrica, para z, |z| > 0, P estudemos a convergência absoluta da série n≥0 (A/z)n , a qual esperamos que convirja a (I − A/z)−1 . Ora, tal série converge P n n absolutamente se, e só se, a série n≥0 kA kop /|z| converge na reta. Chamando de an := kAn kop do critério de comparação (com a série geométrica) que esta última série converge para z tal que lim sup √ n an /|z| < 1 ⇒ |z| > lim sup √ n an = lim sup p n kAn k. Notamos que a composição de aplicações lineares com A é contínua em L(E). Por exemplo, para a composição com A à esquerda, temos: kA◦B−A◦Ckop = kA◦(B−C)kop ≤ kAkop ·kB−Ckop , ∀B, C ∈ L(E), mostrando que tal aplicação de composição é Lipschitz. Temos p assim da continuidade da composição que para |z| > lim sup n kAn k, Augusto Armando de Castro Júnior 123 vale (I − A/z) lim n→∞ lim n→∞ n n X X (A/z)n = lim (I − A/z) (A/z)n = n→∞ j=0 j=0 n+1 n X X (A/z)n = lim I − (A/z)n = I. (A/z)n − j=0 n→∞ j=1 Efetuando contas similares, só que com a composição à direita p com (I −A/z), concluímos que para |z| > lim sup n kAn k, existe P∞ (zI − A)−1 = (1/z) · n=0 (A/z)n . Isso nos dá uma cota mais fina para o raio da bola fechada onde se encontra sp(A). Para mostrarmos que sup{|x|; x ∈ sp(A)} = lim sup p n kAn k, basta que adaptemos a teoria de funções holomorfas de C em C, para curvas holomorfas em espaços de Banach, o que já foi feito na seção 1.4. Note que a série de Laurent de ρ em torno de zero é +∞ ρ(z) = 1X (A/z)n . z j=0 Concluímos então que a série de Laurent de ρ converge para todo z ∈ C tal que |z| > sup |sp(A)| e, é claro, não converge para |z| < sup |sp(A)|, pois se convergisse, como vimos acima, existiriam pontos do espectro λ tais que a inversa [λI − A]−1 p estaria definida, absurdo . Logo, sup |sp(A)| = lim sup n kAn k. Podemos melhorar o resultado do último parágrafo, mosp n kAn k. De fato, note que λ ∈ sp(A) ⇒ trando que existe limn→+∞ λn ∈ sp(An ). Para ver isso, basta observar que (λn − An ) = (λ − A) ◦ (An−1 + λAn−1 + · · · + λn−1 ) = (An−1 + λAn−1 + · · · + λn−1 ) ◦ (λ − A) 124 Capítulo 3. Funções de Operador implica que se λn ∈ res(An ), então λ − A também é invertível. Temos portanto que se λ ∈ sp(A), |λn | ≤ r(An ) ≤ kAn k, p n kAn k, ∀n ∈ N, e daí, |λ| ≤ lim inf n→+∞ donde concluímos p p lim sup n kAn k = r(A) ≤ lim inf n kAn k. e logo |λ| ≤ p n kAn k n→+∞ n→+∞ Falta vermos que sp(A) 6= ∅. Para tal, basta usarmos do Teorema de Liouville (Teorema 2.60, da página 74). Se por absurdo, o espectro de A fosse vazio, ρ seria uma aplicação inteira. Nesse caso, é fácil ver que ρ seria globalmente limitada: Se λ ∈ B(0, 2kAk), então ρ(λ) é uniformemente acotada por ρ ser contínua e B(0, 2kAk ser compacta em C. Por outro lado, kρ(λ)k = k(λI − A)−1 k = [ inf kλv − A(v)k]−1 ≤ kvk=1 [|λ| − kAk] −1 ≤ [|λ|/2]−1 , ∀λ; |λ| > 2kAk, concluindo que se ρ fosse inteira, seria globalmente limitada e portanto constante pelo Teorema de Liouville, o que é absurdo. Uma consequência imediata, e bastante importante disso, é que se o espectro de A está contido na bola unitária aberta B(0, 1), automaticamente todo iterado suficientemente grande de A será uma contração. Uma última observação, é que outra prova de que existe p n lim kAn k pode ser obtida usando-se da subaditividade da sequência an := log(kAn k). Tal se deve ao seguinte resultado elementar: Augusto Armando de Castro Júnior 125 Proposição 3.6. Seja (an ) uma sequência de reais tais que am+n ≤ an + am . Então, sempre vale limn→+∞ n1 an = inf an /n. Em particular, se inf an /n > −∞, o limite acima existe em R. Prova: É imediato que an ≤ n · a1 , logo, (an /n) é limitada superiormente. Por outro lado, vale ainda que se k = n · m + s, com 0 ≤ s < n, ak ≤ m · an + s · a1 an+k /(n+k) ≤ (an +ak )/(n+k) ≤ (an (m+1))/(n+k)+sa1 /(n+k) ≤ (nan + an k)/(n + k)n + sa1 /(n + k) ≤ an /n + sa1 /(n + k). (3.1) Fazendo k → +∞, temos que lim sup aj /j = lim sup an+k /(n + k) ≤ an /n, j→+∞ k→+∞ para todo n ∈ N fixado. Ora, mas então lim sup aj /j ≤ inf an /n ≤ lim inf aj /j, j→+∞ j→+∞ e portanto limn→+∞ an /n = inf an /n, podendo talvez este limite ser −∞. Corolário 3.7. Existe limn→+∞ p n kAn k. Prova: Sem perda de generalidade, suponha A 6= 0. Note que kAn k ≤ kAkn implica em que an := log(kAn k) é subap ditiva. Se inf an /n = −∞, tal implica que limn→+∞ n kAn k = 0, e nada temos a provar. Caso inf an /n ≥ c > −∞, então 126 1 n Capítulo 3. Funções de Operador log(kAn k) → c implica que dado > 0, existe n0 ∈ N tal que ∀n ≥ n0 vale ou seja, limn→+∞ en(c−) < kAn k < en(c+) , p n kAn k = ec . 3.2 Noções Básicas de Teoria Espectral Na seção 2.1.2, adaptamos a Teoria clássica de Análise Complexa com a finalidade de estudar a aplicação resolvente ρ de um operador linear A : E → E fixado, onde E é um espaço de Banach. Usamos o fato de que ρ é uma aplicação holomorfa de um aberto de C em L(E). A idéia desta nova seção é estudar o espectro sob um foco diferente, cuja motivação é a seguinte. Dado Pm um polinômio p(z) = n=0 cn z n , com cn ∈ C, ∀n ∈ {0, . . . , m}, podemos avaliá-lo em L(E) (no lugar de avaliá-lo em C) pela fórmula: L(E) 3 p(A) = m X c n An . n=0 Dizemos que p(A) é uma função polinomial do operador A. Como as funções holomorfas são localmente limite uniforme de polinomiais, claro está que dada uma função f : U ⊂ C → C deve ser possível estender o conceito de função de operador para funções analíticas quaisquer, obtendo-se f (A). A definição precisa de f (A), das relações entre seu espectro e o espectro de A e suas consequências são o objetivo da presente seção. Definição 3.8. (Função de operador.) Seja A ∈ L(E) um operador linear em um espaço de Banach E e f : U → C uma Augusto Armando de Castro Júnior 127 função holomorfa definida uma vizinhança (fechada) U não necessariamente conexa de sp(A). Suponha que ∂U = C é composta de curvas fechadas, C 1 por partes, orientadas com a orientação induzida no bordo. Definimos a função do operador A dada por f como 1 f (A) := 2πi Z f (λ)ρ(λ)dλ C Denotamos por F(A) à coleção de todas as funções holomorfas em alguma vizinhança com fronteira C 1 por partes de sp(A). Dadas f, g ∈ F(A), Teorema 3.9. (Cálculo Funcional.) c ∈ C, valem: 1. c · f + g ∈ F(A) e (c · f + g)(A) = c · f (A) + g(A). 2. f · g ∈ F(A) e (f · g)(A) = f (A) · g(A). 3. Se f possui expansão em série de Taylor f (λ) = P∞ k=0 an λn , absolutamente convergente em uma vizinhança de sp(A), P∞ então f (A) = n=0 an An . Prova: Para o item 1, devemos esclarecer que por h = c · f + g entendemos a função obtida somando-se na intersecção dos domínios de f e g. O resultado é consequência óbvia da linearidade da integral. Para mostrarmos o item 2, usamos a equação do resolvente: 1 4π 2 Z Z f (A) · g(A) = − 1 − 2 4π Z C1 C2 Z f (λ)ρ(λ)dλ C1 g(µ)ρ(µ)dµ = C2 f (λ)g(µ)ρ(λ)ρ(µ)dµ dλ = 128 Capítulo 3. Funções de Operador − ρ(λ) − ρ(µ) dµ dλ = µ−λ C2 C1 Z Z 1 g(µ) − 2 f (λ) dµ ρ(λ)dλ+ 4π C1 C2 µ − λ Z Z f (λ) 1 g(µ) + 2 dλ ρ(µ)dµ = 4π C2 C1 µ − λ 1 4π 2 Z Z f (λ)g(µ) (pois tomamos C2 exterior a C1 ) Z 1 f (λ)g(λ)ρ(λ)dλ = (f · g)(A). 2πi C1 Quanto ao item 3, sabemos do curso elementar de Análise Complexa que qualquer série de potências converge absolutamente em bolas abertas em torno de um centro, logo, se P a série an λn converge em uma vizinhança de sp(A), estão P∞ existe 0 tal que existe o limite (uniforme) n=0 an λn , ∀λ; |λ| ≤ sup sp(A) + 0 = r. Em particular, denotando por Sr1 a esfera unitária de centro 0 e raio r, obtemos: Z X ∞ Z ∞ 1 1 X n f (A) = ( an λ )ρ(λ)dλ = an λn ρ(λ)dλ = 2πi Sr1 n=0 2πi n=0 Sr1 Z ∞ ∞ ∞ X X 1 X Aj an λn ( )dλ = an An . j+1 2πi n=0 λ Sr1 n=0 j=0 Observação 3.10. Podemos fazer melhor: em verdade o item 3 ainda vale se f possuir expansão em série de Taylor f (λ) = P∞ n k=0 an (λ − λ0 ) , absolutamente convergente em uma vizinhança P∞ n de sp(A). Neste caso, temos f (A) = n=0 an (A − λ0 I) . De fato, f (A) = 1 2πi Z ( ∞ X Sr1 (λ0 ) n=0 n an (λ − λ0 ) )(λI − λ0 I + λ0 I − A) −1 dλ = Augusto Armando de Castro Júnior 129 Z ∞ 1 X 1 n an dλ = (λ − λ0 ) 2πi n=0 (λI − λ0 I) − (A − λ0 I) Sr1 (λ0 ) Z ∞ 1 X 1 1 n an (λ − λ0 ) )dλ = ( A−λ 2πi n=0 λ − λ0 1 − λ−λ0 I Sr1 (λ0 ) 0 1 X an 2πi n j Z n (λ − λ0 ) Sr1 (λ0 ) 1 XX an 2πi n j X (A − λ0 I) j+1 j (λ − λ0 ) n (λ − λ0 ) (A − λ0 I) Z Sr1 (λ0 ) j+1 (λ − λ0 ) dλ = j dλ = Z ∞ 1 1 X n an (A − λ0 I) dλ = 2πi n=0 λ − λ 1 0 Sr (λ0 ) ∞ X 1 an (A − λ0 I) 2πi n=0 n Z Sr1 (λ0 ) ∞ X 1 n dλ = an (A − λ0 I) . λ − λ0 n=0 O próximo teorema (junto com o anterior) pode ser considerado o proto-teorema Espectral, isto é, uma versão não lapidada (e portanto, mais geral) do teorema Espectral. Teorema 3.11. (Mapeamento espectral.) Se f ∈ F(A), então sp(f (A)) = f (sp(A)). Em particular, se A é invertível, então sp(A−1 ) = (sp(A))−1 := {µ−1 , µ ∈ sp(A)}. Prova: (f (sp(A)) ⊂ sp(f (A))) Seja λ ∈ sp(A). A idéia é tentar escrever f (λ)I − f (A) = (λI − A) · g(A), (∗) com g ∈ F(A). Daí, como os operadores de A comutam, fica claro que se f (λ) não estivesse em sp(f (A)), então g(A) · (f (λ) − 130 Capítulo 3. Funções de Operador f (A))−1 seria inversa de (λI − A), absurdo. A própria fórmula acima nos indica como definir g em uma vizinhança de sp(A): ( f (λ)−f (z) , se z 6= λ λ−z g(z) = 0 f (λ), caso z = λ. Como g é holomorfa em um disco furado com centro em λ e é contínua em λ (pois f é holomorfa em λ), segue-se que g é holomorfa inclusive em λ, possuindo assim o mesmo domínio que f . Do Teorema do Cálculo Funcional, segue-se que g(A) satisfaz (*). (sp(f (A)) ⊂ f (sp(A))) Agora seja µ ∈ sp(f (A)) e suponha por absurdo que µ ∈ / f (sp(A)). Neste caso, f (λ)−µ 6= 0, ∀λ ∈ sp(A) e portanto h(z) = (f (z) − µ)−1 está definida (e é holomorfa) em uma vizinhança de sp(A). Ora, do Teorema do Cálculo Funcional, segue-se que h(A) · (f (A) − µI) = I, o que implica que µ ∈ / sp(f (A)), absurdo. Se A é invertível, então 0 ∈ / sp(A), logo f (z) = 1/z é uma função holomorfa definida na vizinhança C \ {0} de sp(A). Ora, do teorema do Cálculo Funcional, de f (z) · z = z · f (z) = 1, concluímos que f (A)·A = A·f (A) = I, ou seja, que f (A) = A−1 . Da parte provada acima do Mapeamento Espectral, concluímos que sp(A−1 ) = sp(f (A)) = f (sp(A)) = (sp(A))−1 . Definição 3.12. (Componente espectral.) Seja A : E → E um operador linear definido em um espaço de Banach E. Um conjunto X ⊂ sp(A) é dito uma componente espectral se ele é aberto e fechado em sp(A). Augusto Armando de Castro Júnior 131 Note que como sp(A) é compacto, toda componente espectral também o é. Note ainda que se X é uma componente espectral, o mesmo vale para X c (o complementar de X em sp(A)). Definição 3.13. (Projeção espectral.) Seja X uma componente espectral do espectro de um operador linear A. Seja PX : V → C definida em uma vizinhança não conexa V = VX ∪ VX c de sp(A), onde VX ⊃ X (respectivamente, VX c ⊃ X c ), tal que PX (z) = 1, ∀z ∈ VX ; PX (z) = 0, ∀z ∈ VX c . A aplicação ΠX := PX (A) ∈ L(E) é dita projeção espectral associada a X. Teorema 3.14. Seja A ∈ L(E) um operador linear em um espaço de Banach, e seja X ⊂ sp(A) um conjunto espectral. Então existe uma decomposição A−invariante Ê ⊕ Ẽ = E tal que sp(A|Ê ) = X e sp(A|Ẽ ) = X c . Prova: Pelo teorema do Cálculo Funcional, vale que ΠX e ΠX c comutam com A e entre si (todos os operadores de A comutam entre si), que I = ΠX + ΠX c , e 0 = ΠX · ΠX c (pois PX (z) · PX c (z) = 0. Ademais, notamos que PX (z) = PX (z) · PX (z) (resp. PX c (z) = PX c (z) · PX c (z)) vale que ΠX = ΠX · ΠX (resp. ΠX c = ΠX c · ΠX c . Em particular, vale ainda que A = ΠX · A + ΠX c · A. Definindo Ê := ΠX (E) e Ẽ := ΠX c (E), temos que Ê + Ẽ = I(E) = E e se v ∈ Ê ∩ Ẽ, então ΠX (v) = v = ΠX c (v) ⇒ ΠX · ΠX c (v) = v ⇒ v = 0, o que implica que Ê e Ẽ estão em soma direta. 132 Capítulo 3. Funções de Operador Finalmente, da comutatividade existente entre A e as projeções espectrais, concluímos abaixo a A−invariância dos espaços Ê e Ẽ: A(Ê) = A(ΠX (E)) = ΠX (A(E)) ⊂ ΠX (E) = Ê; A(Ẽ) = A(ΠX c (E)) = ΠX c (A(E)) ⊂ ΠX c (E) = Ẽ. Agora, mostremos que sp(A|Ê ) = X e que sp(A|Ẽ ) = c X . Primeiramente, observe que como Ê e Ẽ são invariantes por A, também o são por A − λI. Desse modo, A − λI é invertível ⇔ (A − λI)|Ê é invertível e (A − λI)|Ẽ é invertível. Em outras palavras, res(A) = res(A|Ê ) ∩ res(A|Ẽ ), o que equivale a dizer que sp(A) = sp(A|Ê ) ∪ sp(A|Ẽ ). Seja r ∈ / sp(A), e defina g : VX ∪ VX c → C por g(z) = PX (z) ∗ z + r ∗ PX c . Isso implica que g(A) = ΠX · A + rΠX c . Ou seja, g(A) = (A|Ê , I|Ẽ ) Ora, o mapeamento espectral, junto com o mesmo raciocínio acima (baseado na invariância dos espaços Ê, Ẽ) aplicado a g no lugar de A nos dão: X ∪ {r} = sp(g(A)) = sp(A|Ê ) ∪ {r}; e analogamente, poderíamos concluir que X c ∪ {r} = sp(A|Ẽ ) ∪ {r}. 3.3. Programa de Cálculo de projeções espectrais 133 Como r não pertence a sp(A), não pertence a nenhum dos subconjuntos sp(A|Ê ), sp(A|Ẽ ), X e X c , donde concluímos que sp(A|Ê ) = X e sp(A|Ẽ ) = X c . 3.3 Programa de Cálculo de projeções espectrais Nessa seção, apresentamos um programa em linguagem C por nós escrito que permite entrar uma matriz e uma região quadrada contendo um possível autovalor λ de um operador A, com a finalidade de calcular, usando da teoria vista de Análise complexa a projeção espectral associada λ. Note que a mesma região funciona para calcular a projeção espectral associada ao prolongamento de λ com respeito a operadores suficientemente próximos de A. Para compilar o programa, deve-se digitar e salvar em uma mesma pasta os arquivos listados abaixo, além dos arquivos "tipos.h"e "integra.c"da listagem do final do segundo capítulo deste livro. e digitar em um terminal (preferencialmente, linux): gcc -o proj proj.c -lm Após a listagem, temos uma figura com a tela de execução do exemplo que demos na introdução. Para quem preferir copiar e colar, a listagem abaixo também se encontra no link: https://groups.google.com/ forum/?fromgroups#!forum/funcoesdeoperador29cbm 134 /∗ /∗ ∗/ /∗ /∗ ∗/ Capítulo 3. Funções de Operador Programa de C a l c u l o de P r o j e c o e s E s p e c t r a i s Arquivo p r i n c i p a l : p r o j . c Autor : Augusto Armando de C a s t r o J u n i o r Data : 15 de a b r i l de 2 0 1 3 . #include <s t d i o . h> #include < s t d l i b . h> #include <math . h> #i f n d e f r e a l #define r e a l double #endif #i f n d e f PI #define PI 3 . 1 4 1 5 9 2 6 5 3 5 8 9 7 9 3 2 3 8 4 6 2 6 4 3 3 8 3 2 7 9 5 #endif struct complex { re al re ; r e a l im ; }; char e r r =0; s t a t i c struct complex z e r c= { 0 . 0 , 0 . 0 } ; s t a t i c struct complex umc= { 1 . 0 , 0 . 0 } ; struct complex somc ( struct struct complex subc ( struct struct complex mulc ( struct struct complex mulr ( struct struct complex d i v c ( struct int i g u a l c ( struct complex complex , struct complex ) ; complex , struct complex ) ; complex , struct complex ) ; complex , r e a l ) ; complex , struct complex ) ; z1 , struct complex z2 ) ∗/ ∗/ Augusto Armando de Castro Júnior 135 { return ( ( z1 . r e== z2 . r e)&& ( z1 . im== z2 . im ) ) ; } #define atric1 ( z) (z) struct complex a t r i c 2 ( r e a l , r e a l ) ; long c u r v a r e s o l v e n t e ( struct complex ∗ , int , int , struct complex ∗ , lon long g e r a c u r v a f e c ( struct complex , struct complex , struct complex ∗ , lo #define TIPOCOMPLEX #define TIPO struct complex #include " t i p o . h" #include " e q l i n . c " #include " i n t e g r a . c " /∗ Numero de d i v i s o e s na i n t e g r a c a o : ∗/ #define ITERA 640 /∗ dimensao ( ao quadrado ) maxima das m a t r i z e s : ∗/ #define DIMAX2 36 i n t main ( i n t a r g c , char ∗ a r g v [ ] ) { char ∗ s t r ; r e a l p1 , q1 , p2 , q2 ; struct complex r1 , z1 , z2 ; s t a t i c struct complex mat [ ( 2 ∗ ITERA+ 1 ) ∗ DIMAX2 ] , m a t s a i [ ITERA∗ DIMAX2 ] , z [ ITERA∗ 2 ] , s , ∗sum ; i n t n , c o l , i , j , dimat ; long p ; i f ( argc < 6) { printf ( " Programa ␣%s \n" , argv [ 0 ] ) ; printf ( "Uso : ␣%s ␣ z1 . r e ␣ z1 . im␣ z2 . r e ␣ z2 . im␣dim␣mat [ 0 ] . r e ␣mat [ 0 ] . im . . . \ n" , 136 Capítulo 3. Funções de Operador argv [ 0 ] ) ; p u t s ( "Onde : " ) ; p u t s ( " z1 . re , ␣ z1 . im : ␣ c o o r d e n a d a s ␣ do ␣ c e n t r o ␣ da ␣ r e g i a o " ) ; p u t s ( " z2 . re , ␣ z2 . im : ␣ c o o r d e n a d a s ␣ de ␣um␣ ponto ␣ f o r a ␣ da ␣ r e g i a o . " ) ; p u t s ( "dim : ␣ dimensao ␣ do ␣ e s p a c o ␣em␣ que ␣ a ␣ m a t r i z ␣ atua " ) ; exit (0); } z1 . r e z1 . im z2 . r e z2 . im dimat = = = = = a t o f ( argv [ a t o f ( argv [ a t o f ( argv [ a t o f ( argv [ a t o i ( argv [ 1]); 2]); 3]); 4]); 5]); s= a t r i c 2 ( 0 . 0 , 1 . 0 / ( 2 ∗ PI ) ) ; i f ( ( dimat ∗ dimat ) ∗ 2 >= ( a r g c − 5 ) ) { printf ( "Numero␣ de ␣ e n t r a d a s ␣ eh ␣ menor ␣ que ␣ a ␣ dimensao ␣%dx%d␣ da ␣ m a t r i z " , dimat , dimat ) ; e x i t ( −1); } f o r ( i= 0 , j= 6 ; i < ( dimat ∗ dimat ) ; i ++, j+= 2 ) { mat [ i ] . r e= a t o f ( a r g v [ j ] ) ; mat [ i ] . im= a t o f ( a r g v [ j + 1 ] ) ; } p= g e r a c u r v a f e c ( z1 , z2 , z , ITERA ) ; c u r v a r e s o l v e n t e ( mat , dimat , dimat , z , p); i n t e g r c (&mat [ (ITERA+ 1 ) ∗ dimat ∗ dimat ] , matsai , &mat [ dimat ∗ dimat ] , z , dimat ∗ dimat , p ) ; sum= &m a t s a i [ dimat ∗ dimat ∗ ( p− 1 ) ] ; f o r ( i= 0 ; i < dimat ∗ dimat ; i ++) { Augusto Armando de Castro Júnior 137 sum [ i ]= mulc ( sum [ i ] , s ) ; } p r i n t f ( "A␣ m a t r i z ␣ de ␣ p r o j e c a o ␣ eh : ␣ \n" ) ; m o s t r a m a t r i z ( sum , dimat , 0 , 0 , dimat , dimat , "%l 7 . 4 f+␣ i%l 7 . 4 f ␣ " ) ; p u t s ( " \nQue␣ a s ␣ f o r c a s ␣ c e g a s ␣ s e ␣domem , ␣ da ␣ l u z ␣ que ␣ a ␣ alma ␣tem ! \ n" ) ; } struct complex a t r i c 2 ( r e a l re , r e a l im ) { struct complex z ; z . r e= r e ; z . im= im ; return ( z ) ; } struct complex mulc ( struct complex z1 , struct complex z2 ) { struct complex z ; z . r e= z1 . r e ∗ z2 . r e − z1 . im∗ z2 . im ; z . im= z1 . r e ∗ z2 . im + z1 . im∗ z2 . r e ; return ( z ) ; } struct complex mulr ( struct complex z1 , r e a l r ) { z1 . r e ∗= r ; z1 . im∗= r ; return ( z1 ) ; } 138 Capítulo 3. Funções de Operador struct complex somc ( struct complex z1 , struct complex z2 ) { struct complex z ; z . r e= z1 . r e + z2 . r e ; z . im= z1 . im + z2 . im ; return ( z ) ; } struct complex d i v c ( struct complex z1 , struct complex z2 ) { struct complex z ; r e a l m= z2 . r e ∗ z2 . r e+ z2 . im∗ z2 . im ; i f (m != 0 . 0 ) { z2 . r e /= m; z2 . im/= −m; z . r e= z1 . r e ∗ z2 . r e − z1 . im∗ z2 . im ; z . im= z1 . r e ∗ z2 . im + z1 . im∗ z2 . r e ; return ( z ) ; } e r r= 1 ; return ( z2 ) ; } struct complex subc ( struct complex z1 , struct complex z2 ) { z1 . re−= z2 . r e ; z1 . im−= z2 . im ; return ( z1 ) ; } long g e r a c u r v a f e c ( struct complex z1 , struct complex z2 , struct complex ∗ z , long p ) { r e a l r1 , r2 , x , y ; i n t j , k , l , m; p−= p%4; Augusto Armando de Castro Júnior i f ( p<= 0 ) return ( 0 ) ; r 1= f a b s ( z1 . re− z2 . r e ) ; r 2= f a b s ( z1 . im− z2 . im ) ; r 1= ( r1>= r 2 ) ? r 1 / 4 . 0 : r 2 / 4 . 0 ; r 2= ( 8 . 0 ∗ r 1 ) / ( r e a l ) ( p ) ; p+= 4 ; f o r ( j= 0 , l= p / 4 , k= ( 3 ∗ p)/4− 1 , m= p− 1 , x= z1 . re− r1 , y= z1 . im− r 1 ; x<= ( z1 . r e+ r 1 ) ; x+= r2 , y+= r2 , j ++, l ++, k−−, m−−) { z [ j ] . r e= z [ k ] . r e= x ; z [ j ] . im= z1 . im− r 1 ; z [ k ] . im= z1 . im+ r 1 ; z [ l ] . im= z [ m ] . im= y ; z [ l ] . r e= z1 . r e+ r 1 ; z [ m ] . r e= z1 . re− r 1 ; } f o r ( ; j<= ( p / 4 ) ; j ++) { z [ j ] . r e= z1 . r e+ r 1 ; z [ j ] . im= z1 . im− r 1 ; } f o r ( ; k>= p / 2 ; k−−) { z [ k ] . r e= z1 . r e+ r 1 ; z [ k ] . im= z1 . im+ r 1 ; } 139 140 Capítulo 3. Funções de Operador f o r ( ; m>= ( 3 ∗ p ) / 4 ; m−−) { z [ m ] . im= z1 . im+ r 1 ; z [ m ] . r e= z1 . re− r 1 ; } z [ p+ 1]= z [ p]= z [ 0 ] ; return ( p ) ; } long c u r v a r e s o l v e n t e ( struct complex ∗mat , i n t c o l , i n t n , struct complex ∗ z , long p ) { long i , j ; struct complex mataux [ 2 5 6 ] ; f o r ( i= 1 ; i <= p ; i ++) { f o r ( j= 0 ; j < n ; j ++) { memcpy(&mataux [ j ∗ 2∗ c o l ] , &mat [ j ∗ c o l ] , c o l ∗ s i z e o f ( struct complex ) ) ; mataux [ j ∗ 2∗ c o l+ j ]= subc ( mataux [ j ∗ 2∗ c o l+ j ] , z [ i − 1 ] ) ; } invmatudo ( mataux , c o l , &mat [ i ∗ n∗ c o l ] ) ; } } Augusto Armando de Castro Júnior /∗−−−− Arquivo e q l i n . c #define SIST ( i , j ) 141 −−−−−∗/ s [ ( i ) ∗ ( ( c o l )+1) + j ] i n t e s c a l a t u d o (TIPO ∗ s , TIPO ∗x , i n t imax , i n t c o l ) { int jaux , iaux , i n d x ; int c t= 0 , i , j , k , kant , n , tm ; TIPO s i i , m; n= ( imax< c o l ) ? imax : c o l ; f o r ( i= k= kant= 0 ; i < n ; i ++) { i n d x= i ; ATR( s i i , ZERO ) ; do{ f o r ( i a u x= i ; iaux< imax ; i a u x++) i f ( ! ( IGUAL( s [ i a u x ∗ c o l+ i+ k ] , ZERO ) ) ) { ATR( s i i , s [ i a u x ∗ c o l+ i+ k ] ) ; i n d x= i a u x ; break ; } i f (IGUAL( s i i , ZERO) ) k++; } while ( ( IGUAL( s i i , ZERO) ) && ( ( i+ k)< c o l ) ) ; i f ( k != kant ) { c t ++; kant= k ; } i f ( ! IGUAL( s i i , ZERO) ) { i f ( i n d x != i ) { 142 Capítulo 3. Funções de Operador tm=( c o l − ( i+k ) ) ∗ TAM; memcpy ( ( char ∗ ) x , ( char ∗)& s [ i n d x ∗ c o l+ i+ k ] , tm ) ; memcpy ( ( char ∗)& s [ i n d x ∗ c o l+ i+ k ] , ( char ∗)& s [ i ∗ c o l+ i+ k ] , tm ) ; memcpy ( ( char ∗)& s [ i ∗ ( c o l+ 1)+ k ] , ( char ∗ ) x , tm ) ; } f o r ( i a u x= i+ 1 ; iaux< imax ; i a u x++) { m= DV( s [ i a u x ∗ c o l+ i+ k ] , s i i ) ; f o r ( j a u x= i ; jaux< c o l ; j a u x++) ATR( s [ i a u x ∗ c o l+ j a u x ] , SB( s [ i a u x ∗ c o l+ j a u x ] , ML( s [ i ∗ c o l+ j a u x ] ,m) ) ) ; } } } return ( c t ) ; } TIPO detudo (TIPO ∗ s , i n t c o l ) { int int TIPO jaux , iaux , i n d x ; c t= 0 , i , j , tm ; s i i , m, muda , x [ 2 0 4 8 ] ; ATR( muda , UM) ; f o r ( i= 0 ; i < c o l ; i ++) Augusto Armando de Castro Júnior { ATR( s i i , ZERO ) ; f o r ( i a u x= i ; iaux< c o l ; i a u x++) i f ( ! IGUAL( s [ i a u x ∗ c o l+ i ] , ZERO ) ) { ATR( s i i , s [ i a u x ∗ c o l+ i ] ) ; i n d x= i a u x ; break ; } i f ( IGUAL( s i i , ZERO) ) c t ++; else { i f ( i n d x != i ) { ATR( muda , SB(ZERO, muda ) ) ; tm=( c o l − i ) ∗ TAM; memcpy ( ( char ∗ ) x , ( char ∗)& s [ i n d x ∗ c o l+ i ] , tm ) ; memcpy ( ( char ∗)& s [ i n d x ∗ c o l+ i ] , ( char ∗)& s [ i ∗ c o l+ i ] , tm ) ; memcpy ( ( char ∗)& s [ i ∗ ( c o l+ 1 ) ] , ( char ∗ ) x , tm ) ; } f o r ( i a u x= i+ 1 ; iaux< c o l ; i a u x++) { m= DV( s [ i a u x ∗ c o l+ i ] , s i i ) ; f o r ( j a u x= i ; jaux< c o l ; j a u x++) ATR( s [ i a u x ∗ c o l+ j a u x ] , SB( s [ i a u x ∗ c o l+ j a u x ] , ML( s [ i ∗ c o l+ j a u x ] , m) ) ) ; } } } f o r ( i= 0 ; i < c o l ; i ++) 143 144 Capítulo 3. Funções de Operador { ATR( muda , ML( muda , s [ i ∗ ( c o l+ 1 ) ] ) ) ; } return ( muda ) ; } i n t e q l i n u d o (TIPO ∗ s , i n t c o l , TIPO ∗x ) { int imax= c o l − 1 , c t= 0 , i , j ; TIPO aux ; c t= e s c a l a t u d o ( s , x , imax , c o l+ 1 ) ; i f ( IGUAL( SIST ( imax , imax ) , ZERO) ) return(++c t ) ; f o r ( i= imax ; i >= 0 ; i −−) { ATR( aux , ZERO ) ; f o r ( j= i+ 1 ; j <= imax ; j ++) ATR( aux , SB( aux , ML( SIST ( i , j ) , x [ j ] ) ) ) ; ATR( x [ i ] , DV(SM( aux , SIST ( i , c o l ) ) , SIST ( i , i ) ) ) ; } return ( 0 ) ; } /∗−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−∗/ /∗ funcao int invmatudo ( ) ∗/ /∗−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−∗/ /∗ O b j e t i v o : I n v e r t e r uma m a t r i z . ∗/ Augusto Armando de Castro Júnior 145 /∗−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−∗/ i n t invmatudo (TIPO ∗ s , i n t c o l , TIPO ∗ s i n v ) { i n t i , j , k , imax= c o l ; TIPO aux , d1 , d2 ; i f ( c o l== 2 ) { aux= s i n v [ 0]= s [ 0 ] ; s i n v [ 1]= s [ 1 ] ; s i n v [ 2]= s [ 4 ] ; s i n v [ 3]= s [ 5 ] ; d1= ML( aux , s i n v [ 3 ] ) ; d2= ML( s i n v [ 1 ] , s i n v [ 2 ] ) ; d1= SB( d1 , d2 ) ; i f (IGUAL( d1 , ZERO) ) { p u t s ( " m a t r i z ␣ nao ␣ i n v e r s i v e l " ) ; return ( 1 ) ; } s i n v [ 0]= DV( s i n v [ 3 ] , d1 ) ; s i n v [ 3]= DV( aux , d1 ) ; d1= SB(ZERO, d1 ) ; s i n v [ 1]= DV( s i n v [ 1 ] , d1 ) ; s i n v [ 2]= DV( s i n v [ 2 ] , d1 ) ; return ( 0 ) ; } f o r ( i= 0 ; i < c o l ; i ++) { f o r ( j= 0 ; j < i ; j ++) s [ ( i ∗ 2 + 1 ) ∗ c o l+ j ]= s [ ( j ∗ 2 + 1 ) ∗ c o l+ i ]= ZERO; } f o r ( i= 0 ; i < c o l ; i ++) s [ ( i ∗ 2+ 1 ) ∗ c o l + i ]= UM; 146 Capítulo 3. Funções de Operador i f ( e s c a l a t u d o ( s , s i n v , imax , 2∗ c o l ) ) return ( 0 ) ; f o r ( i= imax− 1 ; i >= 0 ; i −−) { aux= s [ i ∗ 2∗ c o l+ i ] ; f o r ( j= i ; j < 2∗ c o l ; j ++) s i n v [ i ∗ ( c o l −1)+ j ]= s [ i ∗ 2∗ c o l+ j ]= DV( s [ i ∗ 2∗ c o l+ j ] , aux ) ; f o r ( k= i − 1 ; k>= 0 ; k−−) { aux= s [ k∗ 2∗ c o l+ i ] ; f o r ( j= c o l ; j < 2∗ c o l ; j ++) { s [ k∗ 2∗ c o l+ j ]= SB( s [ k∗ 2∗ c o l+ j ] , ML( aux , s [ i ∗ 2∗ c o l+ j ] ) } /∗−−−− nao e s c a l o n a duas v e z e s s , j a s a i com s i n v −−−−∗/ } } f o r ( i= 0 ; i < c o l ; i ++) f o r ( j= 0 ; j < c o l ; j ++) { s i n v [ i ∗ c o l+ j ]= s [ i ∗ 2∗ c o l+ c o l + j ] ; s [ i ∗ 2∗ c o l+ j ]= ( i== j ) ?UM:ZERO; } return ( 1 ) ; } i n t m o s t r a m a t r i z (TIPO ∗ s , i n t c o l , i n t l i n i , i n t c o l i n i , i n t nl , i n t n c o l , char ∗ s t r ) { int i , j ; Augusto Armando de Castro Júnior 147 Figura 7 – Execução de programa de Cálculo de Projeções Exemplos de uso do programa proj, entre o quais se vê o da Introdução deste livro. Vide: https://groups.google.com/forum/?fromgroups#!forum/funcoesdeoperador29cbm i n t l f i m= l i n i + nl , c o l f i m= c o l i n i+ n c o l ; f o r ( i= l i n i ; i < l f i m ; i ++) { putchar ( ’ | ’ ) ; f o r ( j= c o l i n i ; j < c o l f i m ; j ++) p r i n t f ( s t r , s [ i ∗ c o l+ j ] ) ; puts ( " | " ) ; } return ( n l ∗ n c o l ) ; } 148 Capítulo 3. Funções de Operador 3.4 Exercícios 1. Mostre que se o resolvente de um operador A está definido sobre uma curva compacta C, então existe uma vizinhança V ∈ L(E) de A, em que o mesmo ocorre para todo operador em V . 2. Seja p(x) = a0 + a1 x + · · · + an−1 xn−1 + xn um polinômio mônico de grau n e seja U um aberto com fronteira regular tal exista uma única raiz λ1 de p contida em U , e esta possua multiplicidade 1. (Vide o exercício 11 da página 116, para ver um método fáctível de como saber se uma região U contém uma tal raiz em seu interior ). Seja A a matriz companheira de p, isto é, a matriz 0 ... 0 −a0 .. 1 . . . . −a1 .. .. .. A := . . . , 0 . . . . . . 1 0 −an−2 0 ... 1 −an−1 cujo polinômio característico é justamente p(x). Considere a matriz Z 1 (zI − A)−1 dz. 2πi ∂U Mostre que qualquer coluna v não nula de Πλ1 é um autoΠλ1 := vetor de A. Seja então w := A · v. Se vj é alguma entrada não nula de v conclua que λ1 = wj /vj . Isso nos dá uma outra maneira efetiva, embora mais onerosa do ponto de vista computacional, de calcular raízes de polinômios. 149 4 Operadores com autovalores dominantes Neste capítulo analisaremos como calcular um autovalor de um operador quando este possui um módulo estritamente maior que todos os outros. Vamos assumir que seu autoespaço e o autoespaço generalizado associado a esse autovalor coincidam. Veremos que nesse caso, existe um cone de vetores que é levado dentro dele mesmo pelo operador, e que o autoespaço do autovalor dominante é um atrator para os vetores deste cone. Ou seja, iterando repetidas vezes por A o cone, suas imagens convergem para o autoespaço do autovalor dominante. Como sempre, isto nos dá também uma maneira eficiente de calcular as raízes de um polinômio quando estas têm todas módulos distintos e são sem multiplicidade. Em geral, o cone de que falamos no parágrafo anterior não é dado de imediato. Veremos um caso particular de operador com autovalor dominante cuja teoria tem grande importância tecnológica: quando a matriz do operador tem todas as entradas estritamente positivas. Nesse caso, o cone em questão é claramente o dos vetores com todas as entradas positivas. Veremos que nesse caso particular, temos de fato um autovalor dominante, positivo, de multiplicidade 1. Tal é o resultado do Teorema de Perron, demonstrado na primeira década do século passado. Tal Teorema e suas generalizações são fundamentais em Teoria Ergódica e de processos estocásticos e corresponde ao coração da eficientíssima máquina de busca em Internet da Google, sendo 150 Capítulo 4. Operadores com autovalores dominantes um exemplo vivo do poder e da importância da Matemática para a tecnologia e o mundo moderno. 4.1 Calculando autovalores dominantes e seus autoespaços Suponha que A : Cn → Cn é um operador linear com autovalores λ1 , . . . , λs . Suponha que λ1 seja dominante, ou seja, |λ1 | > |λj |, ∀j = 1, . . . , s. Se tomarmos uma base ordenada (e1 , . . . , en ) de Cn , então algum dos vetores ej possui alguma componente não nula no autoespaço generalizado de λ1 , pois se possuísse somente nos outros autoespaços generalizados, a base não conseguiria gerar o espaço todo. Suponha que o autoespaço de λ1 e seu autoespaço generalizado coincidam. Vejamos o que ocorre quando iteramos um vetor ej que possua uma componente v1 não nula no autoespaço de λ1 : An (v) = λn1 v1 + An (w), com w ∈ ⊕sj=2 E(λj ). Ora, vimos no capítulo sobre noções de Teoria Espectral, que, não importa que norma completa ponhamos em um espaço de Banach as taxas assintóticas exponenciais de crescimento da norma de um operador serão dadas pelo seu raio espectral. No caso em questão, o raio espectral é |λ1 |, e o raio espectral de A|⊕sj=2 E(λj ) é estritamente menor que |λ1 |. Portanto, λ 1 n v1 An (w) An (v) = + kAn (v)k kAn (v)k kAn (v)k Claramente, a segunda parcela acima converge a zero exponencialmente rápido. Como a norma do membro a esquerda é um, claro está que lim |λn1 v1 |/kAn (v)k = 1. n→∞ 4.2. Cones e Métricas Projetivas 151 Claro está que, em geral, a sequência não converge a um autovetor específico, embora sua distância a esfera unitária do autoespaço E(λ) convirja a zero. Assim, qualquer iterado suficientemente grande dessa sequência será uma boa aproximação para um elemento de E(λ) de norma 1. W := ∀n ≥ Seja |λ1 | > q > max{|λj |, j = 2, . . . , s} Chamemos de n s ⊕j=2 E(λj ). Seja n0 tal que kAn (w)k < |q| kwk, ∀w ∈ W , n0 , e tome γ = max{k[Aj |W ]k, j = 0, . . . , n0 } Note que temos então que a coleção {v ∈ Cn ; v = v1 + w, com v1 ∈ E(λ1 ), w ∈ ⊕sj=2 E(λj ), kv1 k} 4.2 Cones e Métricas Projetivas Nesta seção relembraremos alguns resultados sobre a teoria de cones e métricas projetivas associados a operadores lineares. Mais precisamente apresentaremos o teorema de Birkhoff o qual garante a contração, na métrica projetiva, de operadores lineares restritos a cones estritamente invariantes. Enunciaremos aqui alguns resultados sobre a teoria, cujas provas podem ser vistas em [16, 21, 7]. Seja E um espaço vetorial. Dizemos que C ⊂ E\{0} é um cone se t > 0 e v ∈ C ⇒ t · v ∈ C. Um cone é dito convexo se t1 , t2 > 0 e v1 , v2 ∈ C ⇒ t1 · v1 + t2 · v2 ∈ C, tal condição permite combinar quaisquer direção do cone. Mesmo na ausência de uma topologia, definiremos o fecho fecho C de C, como sendo o conjunto dos pontos w ∈ E 152 Capítulo 4. Operadores com autovalores dominantes tais que existem v ∈ C e uma sequência de elementos positivos (tn )n∈N , tendendo a zero, tais que w +tn ·v ∈ C para todo n ∈ N. Segue da definição de fecho que 0 ∈ fecho C qualquer que seja o cone C ⊂ E. Além disso estamos interessados em eliminar direções simétricas no cone, como por exemplo, semi-planos. Para tal exigiremos que fecho C ∩ (− fecho C) = {0}. Denominaremos os cones convexos com a propriedade acima de cones projetivos. Passaremos agora a definir a métrica projetiva associada ao cone projetivo C. Sejam α(v, w) = sup {t > 0; w − t · v ∈ C} e Figura 8 – Métrica Projetiva- Função α β(v, w) = inf {s > 0; s · v − w ∈ C}. Observe que {t > 0; w − t · v ∈ C} e {s > 0; s · v − w ∈ 4.2. Cones e Métricas Projetivas 153 Figura 9 – Métrica Projetiva- Função β C} podem ser vazios. Assim, por se tratar de valores positivos, convencionaremos que sup ∅ = 0 e naturalmente inf ∅ = +∞. Definiremos agora θ(v, w) = log β(v, w) . α(v, w) Convencionando que θ = +∞ se α = 0 ou β = +∞ e observando que α(v, w) ≤ β(v, w), segue que θ(v, w) toma valores em [0, +∞]. A próxima proposição estabelece que θ é uma métrica no espaço quociente C/ ∼, onde v ∼ w se, somente se, existe t > 0 tal que v = t · w. Proposição 4.1. Seja C um cone projetivo. Então θ(·, ·) : C × C → [0, +∞] é uma métrica em C/ ∼, isto é, • θ(v, w) = θ(w, v). • θ(u, w) ≤ θ(u, v) + θ(v, w). • θ(v, w) = 0 se somente se existe t > 0 tal que v = t · w 154 Capítulo 4. Operadores com autovalores dominantes A métrica θ é denominada métrica projetiva associada ao cone C. A dependência do cone é dada de forma monótona, isto é, dados dois cones C1 e C2 projetivos, tais que C1 ⊂ C2 , denotado por θ1 = log β1 α1 e θ2 = log β2 α2 suas respectivas métricas projetivas, temos que θ1 ≥ θ2 . Com efeito, como {t > 0; w−t·v ∈ C1 } ⊂ {t > 0; w − t · v ∈ C2 } e {s > 0; s · v − w ∈ C1 } ⊂ {s > 0; s · v − w ∈ C} segue-se que α1 ≤ α2 e β1 ≥ β2 . Logo, θ1 ≥ θ2 . Outro fato interessante associado a métricas projetivas, é que dados E1 e E2 espaços vetoriais, T : E1 → E2 operador linear e C1 , C2 cones projetivos tais que T (C1 ) ⊂ C2 , temos que, T é uma contração fraca restrita a C1 , mais precisamente, θ2 (L(v), L(w)) ≤ θ1 (v, w), para todos v, w ∈ C1 Porém, podemos obter uma contração forte sob a hipótese de que o θ2 -diâmetro de L(C1 ) é finito. Este resultado é devido a Birkhoff, que pode ser encontrado e.g. em [21, Proposição 2.3]. Teorema 4.2. Sejam E1 e E2 espaços vetoriais e sejam C1 ⊂ E1 e C2 ⊂ E2 cones projetivos. Se L : E1 → E2 é um operador linear tal que L(C1 ) ⊂ C2 e D = sup {θ2 (L(v), L(w)); v, w ∈ C1 } < ∞ então θ2 (L(v), L(w)) ≤ 1 − e−D θ1 (v, w), para quaisquer v, w ∈ C1 . Calculemos a métrica projetiva no seguinte Exemplo 4.3. O cone C + dos vetores estritamente positivos é o cone C + := {v = (v1 , . . . , vn ) ∈ Rn ; vj > 0, ∀j = 1, . . . , n} 4.2. Cones e Métricas Projetivas 155 Calculemos a métrica Θ+ associada a C + . Ora, dados v, w ∈ C + , sv−w ∈ C + ⇔ svj −wj > 0, ∀j = 1, . . . , n ⇔ s > wj /vj , ∀j = 1, . . . , n ⇒ β + (v, w) = max{wj /vj , j = 1, . . . , n}. Analogamente, obtemos que α+ (v, w) = min{wk /vk , k = 1, . . . , n}. Desse modo, concluímos que vj w k Θ+ (v, w) = log max , j = 1, . . . n, k = 1, . . . , n . j,k wj v k Dado um cone C e um operador linear A deixa C estritamente invariante se A(C) ⊂ C e Θ-diam(A(C)) < +∞. Teorema 4.4. Seja A : Rn → Rn um operador linear cuja matriz possua todas as entradas positivas. Então A deixa estritamente invariante o cone C + . Prova: Claramente, A deixa o cone dos vetores estritamente positivos invariante. Seja m o mínimo das entradas de A. Atuando A em um vetor v ∈ C + de norma do máximo igual a um, temos que A(v) tem sua menor entrada pelo menos igual a c (pois a imagem v por A é uma combinação linear de A em que alguma coluna aparece com coeficiente 1, já que a norma do máximo de v é 1) . Comparando a distância de A(v) com, digamos, o vetor u = (1, . . . , 1), temos: [A(v)]j · 1 , j = 1, . . . n, k = 1, . . . , n ≤ Θ+ (A(v), u) = log max j,k 1 · [A(v)]k log(1/c) < +∞. E portanto, dados v, w ∈ C + , usando de desigualdade triangular, Θ+ (A(v), A(w)) ≤ Θ+ (A(v), 1)+Θ+ (1, A(w)) ≤ 2 log(1/c) < +∞, 156 Capítulo 4. Operadores com autovalores dominantes o que mostra que o Θ+ - diâmetro da imagem de A é finito (invariância estrita). Proposição 4.5. Seja (vt ), vt ∈ C + , ∀m ∈ N uma sequência de vetores unitários (na norma do máximo, ou em outra), de Cauchy na métrica Θ+ . Então (vt ) é de Cauchy na norma do máximo (ou em qualquer outra, uma vez que todas são equivalentes em Rn ). Prova: Ora, temos [vt ]j · [vs ]k , j = 1, . . . n, k = 1, . . . , n ; Θ(vt , vs ) = log max j,k [vt ]k · [vs ]j por conseguinte, Θ(vt , vs ) → 0 quando t, s → +∞ equivale a que [v ] ·[v ] maxj,k [vtt ]kj ·[vss ]k → 1 quando t, s → +∞. Como kvt kmax = 1, j temos que Escolhendo k̂ tal que [vs ]k̂ seja igual a 1, temos então: k max j,k [vt ]j · [vs ]k̂ [vt ]j · [vs ]k [vt ]j k≥ ≥ [vt ]k · [vs ]j [vt ]k̂ · [vs ]j [vs ]j Vemos portanto que lim supt,s→+∞ [vt ]j [vs ]j ≤ 1, ∀j = 1, . . . , n. (Ló- gico que aqui, vale a mesma desigualdade permutando t e s). Por outro lado, se para algum j, lim inf t,s→+∞ [vt ]j [vs ]j < 1, trocando os [v ] papéis de t e s, teríamos lim supt,s→+∞ [vst ]jj > 1, absurdo. [v ] concluímos que para todo j, limt,s→+∞ [vst ]jj = 1. Donde Por conseguinte, para todo j ∈ {1, . . . , n}, temos [v ] [v ] tj tj − 1 = − 1 → 0, k[vt ]j − [vs ]j k ≤ kvt kmax · [vs ]j [vs ]j quando t, s → +∞, completando a prova da proposição. 4.2. Cones e Métricas Projetivas 157 Unindo essa proposição ao teorema que a antecede, obtemos: Corolário 4.6. Seja A uma matriz com todas as entradas (estritamente) positivas. Então, A possui um autovalor dominante positivo. Ademais, dado qualquer vetor v ∈ C + , a sequência Am (v) kAm (v)k converge a o único autovetor unitário de entradas pos- tivas do autovalor dominante. Prova: Comecemos pelo "ademais". Dos teoremas anteriores, sabemos que Aj (v) kAj (v)k converge a um vetor unitário w ∈ C + . Note que este vetor é único, independente do vetor v ∈ C + , pois se tomássemos v̂ ∈ C + , a sequência ϕm dada por ( At (v) kAt (v)k , se m = 2t ϕm := At (v̂) kAt (v̂)k , se m = 2t + 1 é Θ+ -Cauchy, e normalizada, portanto, pela proposição anterior, converge uniformemente, mostrando t que ot limite é o mesmo veA (v) A (v̂) tor w, para as sequências kAt (v)k e kAt (v̂)k . Daí, por um lado, Am (w) Am+1 (w) = A → A(w), quando m → +∞, kAm (w)k kAm (w)k o que implica ainda que kAm+1 (w)|k = kA(w)k > 0, m→+∞ kAm (w)k lim Por outro lado, Am+1 (w) → w, quando m → +∞. kAm+1 (w)k 158 Capítulo 4. Operadores com autovalores dominantes Logo, da continuidade de A, Am (w) Am+1 (w) = A → A(w), kAm (w)k kAm (w)k donde obtemos: A(w) = Am+1 (w) Am+1 (w) kAm+1 (w)|k = lim · = kA(w)kw. m→+∞ kAm (w)k m→+∞ kAm+1 (w)k kAm (w)k lim Portanto, w é autovetor unitário do autovalor λ = kA(w)k. Antes de mostrarmos que λ é autovalor dominante, mostremos que dado qualquer vetor v ∈ C + , a distância d( Am (v) , < w > ∩C + ) → 0, λm v onde < w > é o espaço gerado por w. Como o operador Am é positivo, ∀m ∈ N se um vetor v̂ possui todas as suas entradas maiores ou iguais ás de um vetor v, então [Am (v̂)]q ≥ [Am (v)]q , ∀q ∈ {1, . . . , n}. Assim sendo, dado v ∈ C + , tomando vk = min{v1 , . . . , vn }, temos que v/vk tem suas entradas maiores ou iguais aos do vetor unitário w, logo [Am (v)]q [Am (w)]q ≥ vk m → vk wq m λ kA (w)k Por outro lado, tomando wk uma constante igual a min{wl , l = 1, . . . , n}, escrevendo c = kvkmax wk temos c · w − v é um vetor com todas as entradas não negativas e por conseguinte c [Am (w)]q [Am (v)]q ≥ m λ λm Concluímos que vk [Am (1)]q [Am (v)]q [Am (w)]q ≤ ≤c . m m λ λ λm 4.2. Cones e Métricas Projetivas 159 Observe que para todo v ∈ C + , [Am (v)]q wq̂ [Am (v)]q [Am (w)]q̂ = lim = 1, m→∞ [Am (v)]q̂ wq m→∞ [Am (w)]q Am (v)q̂ lim o que implica que wq [Am (v)]q = , ∀v ∈ C + , ∀q, q̂ ∈ {1, . . . , n}. m→∞ [Am (v)]q̂ wq̂ lim Seja [Ams (v)]q λms wq uma subsequência convergente; então ob- teríamos [Ams (v)]q̂ λms wq [Ams (v)]q̂ wq kAms (v)k = → 1, quando s → +∞ λms wq̂ [Ams (v)]q kAms (v)k wq̂ [Ams (v)]q Logo, necessariamente, [Ams (v)]q [Ams (v)]q̂ = m s→+∞ λ s wq λms wq̂ lim e em particular, [Ams (v)]q λms converge a um múltiplo positivo de w. É fácil agora mostramos que o autovalor λ é dominante. Para vermos isso, note que os vetores no dado um vetor v ∈< / w >, e que não esteja na soma dos autoespaços generalizados complementares a < w >, temos que Cn = Rn ⊕ Rn implica que podemos escrever v = v̂ + iṽ, com v̂, ṽ ∈ Rn . Ora, somando uma constante c > 0 suficientemente grande, digamos c = 2kvkmax , temos que (considerando abaixo c como o vetor com todas as entradas igual a c): v̂ + c ∈ C + , ṽ + c ∈ C + , ou seja, v = (v̂ + c) − c + i((ṽ + c) − c) 160 Capítulo 4. Operadores com autovalores dominantes m Do que vimos antes, concluímos que d( Aλm(v) , < w >) converge a zero. Ora, mas isso implica que dado qualquer outro autovetor v̂ de autovalor λ̂, v̂ ∈< / w >, temos: d( |λ̂m | Am (v̂) , < w >) = d(v̂, < w >) m → 0, quando m → +∞. m λ λ Como d(v̂, < w >) > 0, isso só pode significar que λ̂m λm → 0 quando m → +∞, ou seja, λ > λ̂. Observação 4.7. Note que da dominância do autovalor λ, temos que Am (v) → wv , quando m → +∞, λm para algum wv ∈< w >. De fato, como vimos no capítulo sobre noções de Teoria Espectral, como todos as outras componentes espectrais estão contidas em um bola de raio r estritamente menor que λ temos que lim sup n→+∞ p n kAn (v̂)k ≤ r < λ, ∀v̂ ∈ ⊕λ̂∈sp(A)\{λ} E(λ̂), onde E(λ̂) denota o autoespaço generalizado associado ao autovalor λ̂. Portanto, escrevendo de modo único v = wv + v̂, com wv ∈< w > e v̂ ∈∈ ⊕λ̂∈sp(A)\{λ} E(λ̂), temos Am (v) Am (wv ) Am (v̂) = + → wv , quando m → +∞, λm λm λm Deixamos os detalhes desta observação como exercício para o leitor. 4.2. Cones e Métricas Projetivas 161 O algoritmo usado pela Google em seu programa para busca em Internet é uma variante deste que acabamos de ver. De fato, a Google concebeu dois programas. Um, conhecido como Crawler, varre a Internet e seus sites, de modo a catalogar páginas associadas a qualquer palavra chave que se possa imaginar. Com estes dados, para cada palavra chave arma-se uma imensa tabela de referência cruzada entre sites. Por exemplo, se uma palavra têm 1000 sites que a referenciem de alguma forma, criase uma matriz 1000 por 1000, em cuja entrada aij coloca-se um número positivo medindo o que se diria ser a probabilidade de transição do i-ésimo site para o j−ésimo site, ou mais simplesmente, o valor do i−ésimo site se confrontado com o j−ésimo site. Tal valor, nunca é posto como zero - artificialmente, na pior das hipóteses é posto um > 0 mínimo, para garantir que a matriz tenha todas as suas entradas positivas. Daívem a parte mais importante do algoritmo, o Page Rank Algorithm que é a que vimos: o cálculo do autovetor dominante da matriz construída. O autovetor dominante nos mostra a tendência assintótica da matriz. De fato, na prática, iterando a matriz umas poucas vezes, qualquer vetor ficará rapidamente perto do autoespaço dominante. Isso é um tipo de simplificação muito especial da ação do operador, em certo sentido maior até do que quando somos capazes de diagonalizá-lo. Pois significa que a ação de iterados de matriz, vistos sob normalização adequada, se comporta aproximadamente como uma multiplicação por apenas um autovalor (o dominante, os outros ficam desprezíveis), na direção dominante. O autovetor dominante é um vetor de rank dos sites: a i−ésima entrada do autovetor dominante diz qual a importância do i−ésimo site para a palavra chave, dando sua ordem na busca que se fez. 162 Capítulo 4. Operadores com autovalores dominantes O processo é melhorado quanto mais usuários o utilizam, pois a Google calibra dinamicamente a matriz (aumentando os valores de sites mais escolhidos pelo usuário) conforme os usuários prefiram páginas diferentes daquelas pelo algoritmo sugeridas. Claro, mudanças artificiais nos valores da matriz poderiam ser usadas também para gerar uma espécie de censura, colocando determinados sites para o fim da fila... 4.3 Programa de Cálculo de Autovalores Dominantes de Operadores Positivos Nessa seção, apresentamos um programa para o Cálculo do autovalor dominante e respectivo autovetor de um operador cuja matriz tem todas as entradas positivas. Também no código abaixo, está o procedimento domin, para cálculo de autovalor e autovetor dominante, em caso de matrizes reais que possuam autovalor real dominante. #include <s t d i o . h> #include < s t d l i b . h> #include <math . h> #i f n d e f r e a l #define r e a l double #endif #i f n d e f PI #define PI 3 . 1 4 1 5 9 2 6 5 3 5 8 9 7 9 3 2 3 8 4 6 2 6 4 3 3 8 3 2 7 9 5 #endif char _err= 0 ; #define DIMAX2 1024 4.3. Programa de Cálculo de Autovalores Dominantes de Operadores Positivos 163 r e a l domipos ( r e a l ∗ , r e a l ∗ , r e a l ∗ , int , i n t ) ; r e a l domin ( r e a l ∗ , r e a l ∗ , r e a l ∗ , int , i n t ) ; i n t main ( i n t a r g c , char ∗ a r g v [ ] ) { char ∗ s t r ; r e a l lambda ; s t a t i c r e a l mat [ DIMAX2 ] , mataux [ 2∗ DIMAX2 ] , int n , col , i , j ; long p ; v e t [ DIMAX2 ] ; i f ( argc < 2) { printf ( " Programa ␣%s \n␣Uso : ␣%s ␣ ␣<numcols>␣<mat11>␣<mat12>␣ . . . \ n" , argv [ 0 ] , argv [ 0 ] ) ; exit (0); } c o l= a t o i ( a r g v [ 1]); i f ( ( c o l ∗ c o l ) >= ( a r g c − 1 ) ) { printf ( "No . ␣ de ␣ e n t r a d a s ␣ menor ␣ que ␣ a ␣ dimensao ␣%dx%d␣ d i t a ␣ da ␣ m a t r i z " , col , col ) ; e x i t ( −1); } f o r ( i= 0 , j= 2 ; i < ( c o l ∗ c o l ) ; i ++, j ++) { mat [ i ]= a t o f ( a r g v [ j ] ) ; } puts ( " Matriz ␣ i n i c i a l : " ) ; m o s t r a m a t r i z ( mat , c o l , 0 , 0 , c o l , c o l , "%l 7 . 4 f ␣ " ) ; 164 Capítulo 4. Operadores com autovalores dominantes lambda= domipos ( mat , mataux , vet , c o l , 5 ) ; p r i n t f ( " \n␣ A u t o v a l o r ␣ dominante : ␣%l f \n" , lambda ) ; p u t s ( " \n␣ A u t o v e t o r ␣ dominante : " ) ; m o s t r a m a t r i z ( vet , c o l , 0 , 0 , 1 , c o l , "%l 9 . 7 f ␣ " ) ; p u t s ( " \nQue␣ a s ␣ f o r c a s ␣ c e g a s ␣ s e ␣domem , ␣ da ␣ l u z ␣ que ␣ a ␣ alma ␣tem ! \ n" ) ; } r e a l norml ( r e a l ∗mat , i n t l i n , i n t c o l , r e a l { int i , j ; r e a l somaux , soma= 0 . 0 ; f o r ( i= 0 ; i < l i n ; i ++) { f o r ( somaux= 0 . 0 , j= 0 ; j < c o l ; j ++) { somaux+= ab ( mat [ i ∗ c o l+ j ] ) ; } i f ( somaux > soma ) soma= somaux ; } return ( soma ) ; } r e a l domipos ( r e a l ∗mat , r e a l ∗ pr , r e a l ∗ vet , int col , int i t ) { i n t t , n , i , imax , j , k , tam ; r e a l sum , soma , ∗aux , ∗ aua , max ; tam= c o l ∗ c o l ; ( ∗ ab ) ( ) ) 4.3. Programa de Cálculo de Autovalores Dominantes de Operadores Positivos 165 aua= pr ; aux= &pr [ tam ] ; soma= norml ( mat , c o l , c o l , f a b s ) ; i f ( soma== 0 . 0 ) return ( 0 . 0 ) ; f o r ( t= 0 ; t< tam ; t++) { aua [ t ]= aux [ t ]= mat [ t ] / soma ; } f o r ( n= 0 ; n< i t ; n++) { soma= 0 . 0 ; f o r ( i= 0 ; i < c o l ; i ++) f o r ( j= 0 ; j < c o l ; j ++) { sum= 0 . 0 ; f o r ( k= 0 ; k< c o l ; k++) { sum+= aux [ i ∗ c o l+ k ] ∗ aux [ k∗ c o l+ j ] ; } aua [ i ∗ c o l+ j ]= sum ; soma+= f a b s ( sum ) ; } f o r ( t= 0 ; t< tam ; t++) { aux [ t ]= aua [ t ]/= soma ; } p r i n t f ( " \ n I t e r a d o ␣2^%d␣ n o r m a l i z a d o ␣ da ␣ m a t r i z ␣ i n i c i a l : \ n" , n +1); m o s t r a m a t r i z ( aux , c o l , 0 , 0 , c o l , c o l , "%l 9 . 7 f ␣ " ) ; } f o r ( i= 0 ; i < c o l ; i ++) { imax= 0 ; max= 0 . 0 ; v e t [ i ]= aua [ i ∗ c o l ] ; 166 Capítulo 4. Operadores com autovalores dominantes f o r ( j= 1 ; j < c o l ; j ++) v e t [ i ]+= aua [ i ∗ c o l+ j ] ; i f ( f a b s ( v e t [ i ]) > max) { max= f a b s ( v e t [ i ] ) ; imax= i ; } } f o r ( k= 0 , sum= 0 . 0 ; k< c o l ; k++) { sum+= mat [ imax ∗ c o l+ k ] ∗ v e t [ k ] ; } /∗ Retorna o a u t o v a l o r dominante . O a u t o v e t o r dominante , com soma 1 , f i c a armazenado em v e t . ∗/ return ( sum/ v e t [ imax ] ) ; } r e a l domin ( r e a l ∗mat , r e a l ∗ pr , r e a l ∗ vet , int col , int i t ) { i n t t , n , i , imax , j , k , l , tam ; r e a l sum , soma , ∗aux , ∗ aua , ∗v , max , automax ; v= &pr [ 2∗ tam ] ; ∗v= 1 ; f o r ( l= 1 ; l < c o l ; l ++) v [ l ]= 0 ; f o r ( l= 0 ; l < c o l ; l ++) { tam= c o l ∗ c o l ; aua= pr ; aux= &pr [ tam ] ; soma= norml ( mat , c o l , c o l , f a b s ) ; i f ( soma== 0 . 0 ) return ( 0 . 0 ) ; 4.3. Programa de Cálculo de Autovalores Dominantes de Operadores Positivos 167 f o r ( t= 0 ; t< tam ; t++) { aua [ t ]= aux [ t ]= mat [ t ] / soma ; } f o r ( n= 0 ; n< i t ; n++) { soma= 0 . 0 ; f o r ( i= 0 ; i < c o l ; i ++) f o r ( j= 0 ; j < c o l ; j ++) { sum= 0 . 0 ; f o r ( k= 0 ; k< c o l ; k++) { sum+= aux [ i ∗ c o l+ k ] ∗ aux [ k∗ c o l+ j ] ; } aua [ i ∗ c o l+ j ]= sum ; soma+= f a b s ( sum ) ; } f o r ( t= 0 ; t< tam ; t++) { aux [ t ]= aua [ t ]/= soma ; } } f o r ( i= 0 ; i < c o l ; i ++) { imax= 0 ; max= 0 . 0 ; v e t [ i ]= aua [ i ∗ c o l ] ; f o r ( j= 1 ; j < c o l ; j ++) v e t [ i ]+= aua [ i ∗ c o l+ j ] ; i f ( f a b s ( v e t [ i ]) > max) { max= f a b s ( v e t [ i ] ) ; imax= i ; } 168 Capítulo 4. Operadores com autovalores dominantes } f o r ( k= 0 , sum= 0 . 0 ; k< c o l ; k++) { sum+= mat [ imax ∗ c o l+ k ] ∗ v e t [ k ] ; } v [ l ]= 0 ; v [ l+ 1]= 1 ; /∗ Retorna o a u t o v a l o r dominante . O a u t o v e t o r dominante , com soma 1 , f i c a armazenado em v e t . ∗/ } return ( sum/ v e t [ imax ] ) ; } int mostramatriz ( r e a l ∗s , int col , int l i n i , int c o l i n i , i n t nl , i n t n c o l , char ∗ s t r ) { int i , j ; i n t l f i m= l i n i + nl , c o l f i m= c o l i n i+ n c o l ; f o r ( i= l i n i ; i < l f i m ; i ++) { putchar ( ’ | ’ ) ; f o r ( j= c o l i n i ; j < c o l f i m ; j ++) p r i n t f ( s t r , s [ i ∗ c o l+ j ] ) ; puts ( " | " ) ; } return ( n l ∗ n c o l ) ; } 4.4 Exercícios 1. Prove a observação 4.7. 4.4. Exercícios Figura 10 – Cálculo de Autovalores Dominantes. 169 170 Capítulo 4. Operadores com autovalores dominantes Figura 11 – Execução do programa domincoloq. 4.4. Exercícios Figura 12 – Execução com matriz 4 por 4. 171 173 5 O Operador Adjunto Vimos no primeiro capítulo, que embora tenham dimensões complementares e sejam invariantes, nem sempre o núcleo e a imagem de um operador de um espaço nele têm intersec cão trivial. De fato, se um operador A : Cn → Cn tivesse r autovalores distintos, digamos, λ1 , . . . , λr , e para cada Tj := (λj I − A), ker(Tj ) e Tj (Cn ) fossem espaços complementares, então A seria diagonalizável (exercício 1, da página 195). Mesmo no caso em que o operador é diagonalizável, não é muito clara a geometria formada pelos espaços invariantes. Seria o ângulo entre eles muito agudo? Seriam perpendiculares esses espaços? Para entendermos melhor essa geometria, definimos um outro operador A∗ , chamado de operador adjunto de A. Basicamente, seus autoespaços tem uma relação de ortogonalidade com os autoespaços de A. Tais relações serão vistas com precisão, e bastante generalidade, no texto a seguir. Seja E um espaço vetorial normado. O espaço dual de E, denotado por E ∗ , é o espaço vetorial dado por E ∗ := {ı : E → C ; ı é funcional linear contínuo.} R É claro que devido às completudes de R e C, E ∗ é sempre um espaço de Banach com a norma do operador: kıkop := sup {|ı(x)|} x∈E,kxk=1 Se Ê é um outro espaço normado, e A ∈ L(E, Ê), então dado ∈ Ê ∗ , podemos definir um funcional linear A∗ () ∈ E ∗ 174 Capítulo 5. O Operador Adjunto por: A∗ ()(x) = ◦ A(x), ∀x ∈ E. Note que a aplicação A∗ : Ê ∗ → E ∗ dada por 7→ A∗ () é, ela mesma, linear, denominada a adjunta de A. Proposição 5.1. (Propriedades do Operador Adjunto) A aplicação ∗ : L(E, Ê) → L(Ê ∗ , E ∗ ) que a cada A ∈ L(E, Ê) atribui seu adjunto A∗ é um isomorfismo isométrico linear tal que valem a) (T A)∗ = A∗ T ∗ , ∀A ∈ L(E, Ê), T ∈ L(Ê, Ẽ); b) se A possui uma inversa limitada, A∗ também o possui e (A∗ )−1 = (A−1 )∗ ; em particular, se E = Ê, temos sp(A) ⊃ sp(A∗ ). c) ∗ é contínua na topologia uniforme (da norma do operador). Se E for reflexivo, ∗ também é contínua na topologia fraca no espaço de aplicações lineares, mas o é na topologia forte se e só se, E possui dimensão finita. Prova: ∗ é claramente linear, e isometria: kAkL(E,Ê) = sup kA(x)k = sup sup sup |l(A(x)| = kxk≤1 l∈E ∗ ,klk≤1 kxk≤1 sup |l|≤1 x∈E,kxk≤1 |(A∗ l)(x)| = sup kA∗ (l)k = kA∗ k. klk≤1 A segunda igualdade acima deve-se, claro, ao Teorema de HahnBanach. Agora, seja l ∈ Ê ∗ ; temos portanto que ((T A)∗ (l))(x) = l(T A(x)) = (A∗ (l ◦ T ))(x) = (A∗ T ∗ (l))(x). Augusto Armando de Castro Júnior 175 Da definição de ∗, é fácil ver que (IE )∗ = IE ∗ . Da propriedade a), temos IÊ ∗ = (IÊ )∗ = (A ◦ A−1 )∗ = ((A−1 )∗ ◦ A∗ ), analogamente para IE ∗ no lugar de IÊ ∗ , concluímos b). Por ser isometria, é claro que ∗ é contínua na norma do operador. Dados An → A na topologia fraca de L(E, Ê), temos fixado l ∈ Ê ∗ que (An ∗ (l))(x) = l(An (x)) → l(A(x)) = (A∗ (l))(x), implicando que (An )∗ (l) converge a A∗ (l) na topologia fraca-* de E ∗ , a qual é igual a topologia fraca de E ∗ , por E ser reflexivo. Temos portanto que An ∗ → A∗ na topologia fraca de L(E, Ê). Para vermos que em dimensão infinita, seja Tn atuando em `1 (N) dado por Tn ((a1 , a2 , . . . )) = (an+1 , an+2 , . . . ) Note que Tn tem como adjunto o deslocamento de n a direita em `∞ (N), dado por (Tn )∗ ((a1 , a2 , . . . )) = (0, . . . 0, a1 , a2 , . . . ) | {z } n× De fato, dadas sequências (aj ) e (bj ) respectivamente em `1 (N) e `∞ (N) temos +∞ X j=1 [Tn ((aj ))]j bj = +∞ X j=1 aj+n bj = +∞ X j=n+1 aj bj−n = +∞ X aj [(Tn )∗ ((bj ))]j j=1 Claramente, Tn → 0 na topologia forte de `1 (N), mas tal não ocorre com (Tn )∗ . Sabemos que todo espaço de Banach 176 Capítulo 5. O Operador Adjunto separável é isomorfo a algum espaço quociente de `1 (N), e daí é fácil construir exemplo análogo em qualquer espaço de Banach separável. Dado um espaço de Banach E de dimensão infinita qualquer, tomando um conjunto enumerável linearmente independente e o fecho de seu subespaço gerado, obtemos um subespaço Ê ⊂ E fechado e separável, no qual podemos definir aplicações como acima, que depois estendemos ao espaço inteiro. O que demonstra que quando a dimensão é infinita, ∗ não é contínua na topologia forte. Embora a definição acima seja bastante geral, nos restringiremos nessa seção a estudar operadores definidos em espaços vetoriais normados cuja norma k · k provém de um produto √ interno < ·, · >, via a fórmula usual kvk = < v, v >, ∀v ∈ E. Veremos que nesse caso, a definição do operador adjunto é ligeiramente diferente, pois faz uso do isomorfismo sesquilinear existente entre o espaço E e seu dual dado pelo Lema de Riesz. Para explicarmos melhor como isso se dá, começamos por lembrar a seguir algumas definições e fatos referentes a tais espaços: Definição 5.2. (Espaço de Hilbert.) Um espaço vetorial normado E é dito um espaço de Hilbert se sua norma provém de um produto interno e se ele é completo. Definição 5.3. (Espaço Ortogonal.) Seja E um espaço dotado de um produto interno e Ê um subespaço vetorial de E. O espaço ortogonal a Ê, denotado por Ê ⊥ é definido como: Ê ⊥ := {v ∈ E; < x̂, v >= 0, ∀x̂ ∈ Ê}. Claramente Ê ⊥ é um subespaço vetorial fechado de E e temos E = Ê ⊕ Ê ⊥ . Augusto Armando de Castro Júnior 177 Definição 5.4. (Base Ortonormal.) Seja E um espaço vetorial dotado de produto interno. Uma base ortonormal é um conjunto β ⊂ E tal que valem kvk = 1, ∀v ∈ β, < v, w >= 0, ∀v, w ∈ β, com v 6= w e finalmente, dado x ∈ E existem escalares não nulos α1 , . . . , αn , . . . e v1 , . . . , vn , · · · ∈ E satisfazendo x= ∞ X αj vj . j=1 Outra definição útil em espaços dotados de produto interno: Definição 5.5. (Subespaço ortogonal.) Seja E um espaço vetorial munido de um produto interno e Ê ⊂ E um seu subespaço vetorial. O espaço ortogonal de Ê é o conjunto: Ê ⊥ := {x ∈ E, < x, v̂ >= 0, ∀v̂ ∈ Ê}, o qual claramente é um subespaço vetorial de E. O próximo exemplo mostra que em um espaço vetorial dotado com um produto interno, mas não completo, podemos ter um subespaço fechado cujo espaço ortogonal é trivial. Exemplo 5.6. Seja E = (C 0 ([0, 1]; R), < ·, · >) o espaço das funções contínuas com domínio no intervalo [0, 1], dotado do R1 produto interno < f, g >:= 0 f (t) · g(t)dt. Seja (gn ), gn ∈ E uma sequência de Cauchy em E sem limite em E. Por exemplo, tome gn := 0, para t ∈ [0, 1/2 − 1/(n + 1)]; 1/2 + (t − 1/2) · (n + 1)/2, se t ∈ (1/2 − 1/(n + 1), 1/2 + 1/(n + 1)); 1, para t ∈ [1/2 + 1/(n + 1), 1]. 178 Capítulo 5. O Operador Adjunto Daí, defina o funcional linear ĝ : E → R por: ĝ(f ) := lim < f, gn >, ∀f ∈ E. n→∞ É fácil de verificar que ĝ é contínuo. De fato, se fj ∈ E, fj → 0, temos: lim |ĝ(fj )| ≤ lim lim kfj kkgn k ≤ lim kfj k = 0, j→∞ j→∞ n→∞ j→∞ sendo a primeira desigualdade devido a Cauchy-Schwarz, e a seguinte porque a sequência (gn ) é limitada (com norma menor do que 1, em nosso caso específico). Considere Ê = ker(ĝ). Como ĝ é contínuo, segue-se que Ê é fechado em E. Note que qualquer função contínua f : [0, 1] → R que se anule em [1/2, 1] pertence a Ê, o que mostra que esse espaço não é trivial. Por outro lado, Ê 6= E, uma vez que qualquer função contínua f : [0, 1] → R tal que f (t) > 0, ∀t ∈ (1/2, 1) não está contida em Ê. Contudo, Ê ⊥ = {0}. Tal é demonstrado, em grande generalidade, na próxima proposição. Proposição 5.7. Seja E um espaço vetorial dotado de um produto interno, (gn ), gn ∈ E uma sequência de Cauchy não convergente em E e ĝ : E → R o funcional linear dado por ĝ(x) = lim < x, gn > . n→∞ Então: • ĝ é contínuo; • Ê = ker(ĝ) é um subespaço fechado (em E) próprio de E; • Ê ⊥ = {0}. Augusto Armando de Castro Júnior 179 Prova: A prova dos dois primeiros itens é análoga aos argumentos já vistos no exemplo acima. Para o último item, procedamos por absurdo. De fato, se um vetor w 6= 0 pertencesse a Ê ⊥ , poderíamos escrever qualquer vetor v em E como v = v− < v, w > w/kwk2 + < v, w > w/kwk2 . Ora, <v− < v, w > < v, w > w, w >=< v, w > − < w, w >= 0, kwk2 < w, w > o que implica que v− < v, w > w/kwk2 ∈ (Ê ⊥ )⊥ = Ê, pois Ê é fechado em E. Não há perda em normalizar w, isto é, supor que kwk = 1. Afirmamos que w realiza a norma de ĝ. De fato, se v ∈ E é outro vetor de norma 1, não colinear a w, vimos acima que v = v − v̂+ < v, w > w, com v̂ ∈ ker(ĝ). Daí, |ĝ(v)| = |ĝ(v̂)+ < v, w > ĝ(w)| = | < v, w > |kĝ(w)k < (aplicando Cauchy-Schwarz em sua forma estrita, e supondo sem perda ĝ 6≡ 0) kvkkwkkĝ(w)k = kĝ(w)k, o que implica que kĝk = kĝ(w)k, como afirmamos. Observe ainda que kĝk = limn→∞ kgn k. De fato, gn < gn , gn > lim kgn k = lim √ = lim < √ , gn >≥ n→∞ n→∞ < gn , gn > < gn , gn > n→∞ (novamente, por Cauchy-Schwarz) lim < w, gn >= |ĝ(w)| = kĝk. n→∞ Para a outra desigualdade, começamos por observar que para cada j ∈ N, vale ĝ(gj /kgj k) = limn→∞ < gj /kgj k, gn >≤ kĝk. Por outro lado, como gn é de Cauchy, ela é limitada, digamos, 180 Capítulo 5. O Operador Adjunto com norma acotada por M > 0 e ainda como gn 6→ 0, dado > 0, existe n0 ∈ N tal que k gj gn − k < /M, ∀j, n ≥ n0 . kgj k kgn k Isso implica que gj gn gj gn , gn > − < , gn > | ≤ k − kM < , ∀j, n ≥ n0 , kgj k kgn k kgj k kgn k √ e por conseguinte, limn→∞ < gn , gn > = limj→∞ ĝ(gj ) ≤ kĝk. |< Desse modo, lim < gn − n→∞ < gn , w > < gn , w > w, gn − w>= kwk2 kwk2 = lim < gn − < gn , w > w, gn > = n→∞ = lim < gn , gn > − << gn , w > w, gn > = n→∞ = lim < gn , gn > − < gn , w >2 = kĝk2 − kĝ(w)k2 = 0. n→∞ Daí, concluímos que existe limn→∞ gn , e este seria um múltiplo não nulo de w, o que contradiz a hipótese de que a sequência gn não converge em E. É bastante fácil ver que dado um espaço vetorial E munido com um produto interno e um seu subespaço vetorial de dimensão finita Ê ⊂ E, temos E = Ê ⊕ Ê ⊥ . Para tal, basta ver que dado v ∈ E, existe um ponto v̂ Ê que minimiza a distância entre v e Ê, e que v − v̂ ∈ Ê ⊥ (vide exercício 2).. Usaremos isto no próximo Lema 5.8. (Identidade de Parseval Fraca, ou Teorema de Pitágoras.) Seja E um espaço vetorial com produto interno Augusto Armando de Castro Júnior 181 e seja Ê ⊂ E um subespaço vetorial de dimensão finita, o qual dotamos do produto interno oriundo de E. Suponha que β̂ = {v̂1 , . . . , v̂n } seja uma base ortonormal de Ê. Então, dado v ∈ E, este se escreve de maneira única como v = α1 v̂1 +· · ·+αn v̂n +v̂ ⊥ , onde α̂1 =< v, v̂1 >, . . . , α̂n =< v, v̂n > e v̂ ⊥ ∈ Ê ⊥ , valendo n X kvk2 = ( |αj |2 ) + kv̂ ⊥ k2 . j=1 Em particular, vale kvk2 ≥ P∞ j=1 |αj |2 . Prova: Como Ê tem dimensão finita, em particular é fechado em E, implicando que E = Ê ⊕ Ê ⊥ . Assim, dado v ∈ E, podemos escrever v = v̂ + v̂ ⊥ , com v̂ ∈ Ê e v̂ ⊥ ∈ Ê ⊥ . Ademais, Pn v̂ = j=1 αj v̂j , com αj =< v̂, v̂j >=< v̂ + v̂ ⊥ , v̂j >=< v, v̂j >, devido à ortogonalidade existente entre v̂ ⊥ e vj . Finalmente, temos < v, v >=< n X j=1 αj v̂j + v̂ ⊥ , n X αj v̂j + v̂ ⊥ >= j=1 (devido às relações de ortogonalidade existentes entre os diversos vetores v̂1 , . . . v̂n e v̂ ⊥ ) n X j=1 n X |αj |2 < v̂j , v̂j > + < v̂ ⊥ , v̂ ⊥ >= ( |αj |2 ) + kv̂ ⊥ k2 . j=1 Observação 5.9. Note que a prova acima pode ser facilmente adaptada para o caso em que Ê seja somente completo, não necessariamente de dimensão finita (exercício 3). 182 Capítulo 5. O Operador Adjunto Lema 5.10. Seja E um espaço de Hilbert e seja Ê ⊂ E um subespaço fechado próprio. Então, dado v ∈ / Ê, existe v̂ ∈ Ê tal que inf {kv − x̂k} = kv − v̂k. x̂∈Ê Ademais, v − v̂ = w ∈ Ê ⊥ , o que implica que Ê ⊥ 6= {0}. Prova: Seja δ = inf x̂∈Ê {kv − x̂k}. Seja (x̂j ), x̂j ∈ Ê uma sequência que minimiza a distância entre v e Ê. Não há perda em supor que kxj − vk ≤ 2δ + 1 para uma tal sequência minimizante. Comecemos mostrando que < xj − v, x̂ > converge uniformemente a zero, para x̂ ∈ E ∈ B(0, kvk + 2δ + 1). De fato, para α ∈ R (ou C, se o espaço for complexo), temos: δ 2 ≤< (v − xj ) + αx̂, (v − xj ) + αx̂ >⇔ δ 2 ≤< (v − xj ), (v − xj ) > + < (v − xj ), αx̂ > + + < αx̂, (v − xj ) > +|α2 | < x̂, x̂ >⇔ (Fazendo α = r < (v−xj ), x̂ >, onde r ∈ R é qualquer, obtemos:) δ 2 ≤< (v − xj ), (v − xj ) > +2r| < v − xj , x̂ > |2 + +r2 | < v − xj , x̂ > |2 kx̂k2 , ∀r ∈ R, ⇔ δ 2 ≤< (v−xj ), (v−xj ) > +r(2+rkx̂k2 )| < v−xj , x̂ > |2 , ∀r ∈ R. Tomando r < 0, |r|(kvk + 2δ + 1) < 1 temos que δ 2 ≤< (v − xj ), (v − xj ) > +r| < v − xj , x̂ > |2 . Seja > 0 dado. Tome |r| < 2 e seja j0 tal que | < (v − xj ), (v − xj ) > −δ 2 | < r2 , ∀j ≥ j0 . (5.1) Augusto Armando de Castro Júnior 183 Tal implica que | < v − xj , x̂ > | < , ou a desigualdade 5.1 não seria satisfeita. Mostremos que (xj ) é de Cauchy. De fato, 0 ≤ kxj −xm k2 =< xj −xm , xj −xm >=< xj −v+v−xm , xj −xm >= < xj − v, xj − xm > − < xm − v, xj − xm > . | {z } :=x̂∈Ê converge a zero quando j, m → +∞, pela parte inicialmente provada neste lema. Concluímos que (xj ) é de Cauchy, e como a sequência minimizante tomada é arbitrária, concluímos (por argumento canônico de Análise) que toda sequência minimizante possui o mesmo limite, digamos v̂ ∈ Ê. Como v ∈ / Ê, segue-se que w = v − v̂ 6= 0. Como limj→+∞ < v −xj , x̂ >→ 0, ∀x̂ ∈ Ê, concluímos da continuidade do produto interno que w ∈ Ê ⊥ . Observação 5.11. Note que é imediato do lema acima que se E é um espaço de Hilbert e Ê é um seu subespaço fechado, então E = Ê ⊕ Ê ⊥ . A mesma prova serve para mostrar que se E é um espaço vetorial dotado de produto interno (não necessariamente completo) e Ê é um subespaço vetorial completo de E, então também vale E = Ê ⊕ Ê ⊥ . Teorema 5.12. (Representação de Riesz.) Seja E um espaço de Hilbert. Então, dado um funcional linear contínuo f ∈ E ∗ , existe um único w ∈ E tal que f (x) =< x, w >, ∀x ∈ E. 184 Capítulo 5. O Operador Adjunto Prova: Suponha que f 6= 0, pois este caso é imediato. Seja Ê = ker(f ). Como f é contínuo, Ê é fechado em E. Pelo lema anterior, ker(f )⊥ 6= {0}. Seja w̃ 6= 0 um vetor em ker(f )⊥ tal que f (w̃) = 1, e seja w := w̃/ < w̃, w̃ >. Daí, dado v ∈ E, escrevendo v = (v− < v, w̃ > w̃/ < w̃, w̃ >)+ < v, w̃ > w̃, é claro que v̂ := (v− < v, w̃ > w̃/ < w̃, w̃ >) ∈ ker(f ), temos: f (v) = f (v̂)+f (< v, w̃ > w̃/ < w̃, w̃ >) = < v, w̃ > f (w̃) =< v, w > . < w̃, w̃ > Finalmente, para vermos a unicidade, basta aplicarmos mais uma vez o lema: w e z são tais que f (v) =< v, w >=< v, z >, ∀v ∈ E, então vale: < v, w >=< v, z >, ∀v ∈ E ⇔< v, z − w >= = 0, ∀v ∈ E ⇔ z − w ∈ E ⊥ = {0}, implicando que z = w. Corolário 5.13. Seja E um espaço de Hilbert. Então a aplicação F : E → E ∗ dada por F (w) =< ·, w >, é um isomorfismo (sesqui)linear isométrico de E em E ∗ . Observação 5.14. (Representação dos funcionais lineares em E ∗ , quando E é espaço vetorial com produto interno, não necessariamente completo.) Seja E um espaço vetorial dotado de um produto interno, e f : E → R C um funcional linear contí- nuo. Então, pelo teorema de extensão de operadores lineares (o Augusto Armando de Castro Júnior 185 conhecido B.L.T.), o funcional linear f possui uma única exR tensão contínua f˜ : Ẽ → C , onde Ẽ é o completamento de R E. Analogamente, dado f˜ : Ẽ → C um funcional linear contínuo, sua restrição a E determina um único funcional contínuo R f : E → C . Em ambos os casos, como E é denso em Ẽ, obtemos que kf k = kf˜k. Isso implica que E ∗ é isometricamente isomorfo a Ẽ ∗ , via aplicação F̃ : E ∗ → Ẽ ∗ dada por F̃ (f ) = f˜, em que f˜ é a única extensão contínua de um funcional f com domínio em E ao completamento Ẽ. Ora, do Teorema de Representação de Riesz, temos que qualquer funcional linear contínuo f˜ (definido no espaço de Hilbert Ẽ, completamento de E) é da forma: f˜(x̃) =< x̃, w̃ >, ∀x̃ ∈ Ẽ, onde w̃ ∈ Ẽ é um vetor constante, unicamente determinado por f˜. Ora, se f = F̃ −1 (f˜), então f = f˜|E . Em particular, tomandose uma sequência wn → w̃, onde wn ∈ E, é claro que para x ∈ E vale f (x) = f˜(x) =< x, w̃ >= lim < x, wn >, n→∞ o que nos fornece uma representação (não única) para os funcionais lineares em E, simplesmente em termos de sequências em E. A mais importante conclusão a que chegamos a partir da observação acima é que embora nem todo funcional linear em E ∗ (quando E não é completo) possa ter uma representação do tipo f (x) =< x, w >, ∀x ∈ E, com w ∈ E, vetor constante, mesmo assim, os funcionais desse tipo podem ser usados para aproximar qualquer funcional em E ∗ , pois formam um subconjunto denso de E ∗ . Desse modo, estamos aptos a fazer a seguinte: 186 Capítulo 5. O Operador Adjunto Definição 5.15. (Operador Adjunto em Espaços vetoriais com produto interno.) Seja A : E → E um operador linear contínuo, definido no espaço vetorial E, dotado de produto interno < ·, · >. O adjunto, se existir, de A é o único operador linear A∗ : E → E dado por: < A · x, y >=< x, A∗ · y >, ∀x, y ∈ E. Exemplo 5.16. Seja E = (C 0 ([−1, 1]; C), < ·, · >) o espaço das funções contínuas com domínio no intervalo [0, 1], dotado do R1 produto interno < f, g >:= 0 f (t) · g(t)dt. Seja (gn ), gn ∈ E uma sequência de Cauchy em E, normalizada, sem limite em E. Vamos definir uma aplicação A : E → E tal que A∗ não esteja definido. Seja p1 , p2 , . . . a base ortonormal de E dada pela normalização dos polinômios de Legendre. Seja y ∈ E vetor não <pj ,gn > y Daí, nulo fixado. Defina A(pj ) := limn→∞ <y,y> < A(pj ), y >= lim n→∞ < pj , gn > , ∀pj , < y, y > e portanto, A∗ (y)(·) = limn→∞ < ·, gn >, ou seja, não existe w ∈ E tal que < A(x), y >=< x, A∗ (y) >. Compare a definição acima com a de operador adjunto em espaços normados. No caso de espaços vetoriais dotados com produto interno, identificamos E com seu mergulho em E ∗ . Com isso, temos que em espaços dotados de produto interno, tanto o operador como seu adjunto atuam no mesmo domínio, E. Propriedades importantes acerca do espectro de operadores auto-adjuntos são assinaladas na próxima proposição: Proposição 5.17. (Propriedades do Operador Adjunto.) Dado um operador A : E → E em um espaço de Hilbert complexo Augusto Armando de Castro Júnior 187 E, temos que sp(A) = sp(A∗ ) Prova: Note que o adjunto Hilbertiano é definido de maneira um pouco diferente do de Banach. De fato, temos que < x, y >= < (λ−A)(λ−A)−1 (x), y >=< (λx−A(x))−1 , y >= ∗ < x, (λx − A(x))−1 (λy − A∗ )(y) >, ∀x, y ∈ E, implicando (Mutatis Mutandis) que (λx − A(x))−1 ∗ = (λy − A∗ ). Permutando os papéis de A e seu adjunto, obtemos que o conjunto resolvente de um é o conjugado do outro, o mesmo valendo para seus espectros. A despeito de toda a teoria abstrata vista até agora, a grande motivação e utilidade de se considerar operadores adjuntos reside na próxima importante Proposição 5.18. Seja A : H → H um operador linear limitado com domínio em um espaço de Hilbert H. Então ker(A) = ran(A∗ )⊥ e ran(A) = ker(A∗ )⊥ . Prova: Dado v ∈ ker(A) e w ∈ H qualquer, temos: < v, A∗ (w) >=< A(v), w >= 0, e portanto a imagem de A∗ é perpendicular ao ker(A), e reciprocamente, dado v ∈ ran(A∗ )⊥ , temos que 0 =< v, A∗ (w) >=< A(v), w >, ∀w ∈ H, e portanto A(v) = 0, isto é, v ∈ ker(A). 188 Capítulo 5. O Operador Adjunto Por outro lado, como A∗ ∗ = A, do que recém provamos temos que ker(A∗ ) = ran(A∗ )⊥ e portanto ker(A∗ )⊥ = ran(A∗ )⊥ ⊥ = ran(A∗ ). Pensando no contexto de dimensão finita, lembramos que parte da dificuldade em obtermos uma forma de Jordan diagonal em geral consiste em que ker(A − λI) e ran(A − λI) não são em geral espaços complementares podendo ter intersec cão não trivial. Tais espaços são invariantes para A, têm dimensão complementar, mas podem não estar em soma direta. A proposição anterior no permite obter um espaço complementar a ker(A − λI), embora em geral não invariante por A, se A 6= A∗ . Mesmo assim, o fato do aplicação de passar ao adjunto ser um isomorfismo, nos permite até em dimensão infinita levar e trazer cálculos funcionais de um operador para o seu adjunto e viceversa. Tal será explorado de maneira muito esperta na próxima seção, na prova de uma versão aprimorada do Teorema Ergódico de Von Neumann. Por outro lado, quando A = A∗ , e a dimensão for finita, a proposição anterior nos dá que ker(A − λI) e ran(A − λI) estão em soma direta, e a mesma prova da Forma de Jordan nos dá que A é diagonalizável. Tal é provado, em maior generalidade inclusive, no Apêndice do livro. Um operador A tal que A = A∗ é dito auto-adjunto. Proposição 5.19. Seja E um espaço dotado de produto interno e seja A : E → E um operador auto-adjunto. Então qualquer (possível) autovalor de A pertence a R. Ademais, se v1 e v2 são autovetores correspondentes a autovalores λ1 6= λ2 , então são 5.1. Aplicação: generalizando o Teorema de von Neumann 189 ortogonais. Prova: Suponha que λ ∈ C seja um autovalor de A. Temos, portanto: λ < ṽ, ṽ >=< ṽ, λṽ >=< ṽ, Aṽ >= (pois A é auto-adjunta) < Ãṽ, ṽ >=< λṽ, ṽ >= λ < ṽ, ṽ > . Como ṽ 6= 0, segue-se que λ = λ, ou seja, λ ∈ R. Finalmente, λ1 < v1 , v2 >=< Av1 , v2 >=< v1 , Av2 >= λ2 < v1 , v2 > |{z} ⇒ λ1 6=λ2 < v1 , v2 >= 0, ou seja, v1 e v2 são ortogonais se são autovetores associados a autovalores distintos. Observação 5.20. É fato que se A é um operador linear auto adjunto, então seu espectro está contido em R. 5.1 Aplicação: generalizando o Teorema de von Neumann Vimos no capítulo anterior que se o raio espectral de um operador A ∈ L(E) é estritamente menor que 1, então a norma de An converge exponencialmente rápido para zero. Em particular, An (v) converge a zero para qualquer vetor v ∈ E. 190 Capítulo 5. O Operador Adjunto Nessa seção, pretendemos estudar o que podemos dizer sobre a sequência (An (v)), v 6= 0 quando n → +∞ no caso em que o raio espectral é menor ou igual a 1. Será que tal sequência possui limite em algum sentido? Os próximos exemplos nos indicam que hipóteses adicionais são necessárias para que o limite de tal sequência exista à Césaro, o que tende em geral a ser o máximo que podemos esperar. Exemplo 5.21. Seja A ∈ L(R2 ) a aplicação linear cuja matriz na base canônica é dada por A := ! 1 1 0 1 1 n 0 1 Do capítulo 1 temos que n A := ! Desse modo, vemos que para v = (0, 1), An (v) = (n, 1), a qual converge a infinito com velocidade polinomial. Exemplo 5.22. Seja A ∈ L(R2 ) a aplicação linear cuja matriz na base canônica é dada por A := 1/2 √ 3/2 ! √ − 3/2 1/2 , que corresponde a rotação de π/3. Ora, tal implica que todo ponto não nulo é periódico de período mínimo igual a 6. Portanto, a sequência (An (v)), v 6= 0 é periódica, não convergindo quando n → +∞. Augusto Armando de Castro Júnior 191 Note no segundo exemplo que, embora a sequência não convirja sua média converge à Cesàro, ou seja, as médias, N −1 1 X n A (v) N n=0 convergem, quando N → +∞. (No exemplo em questão, convergem para zero). Exemplo 5.23. Seja `2 o espaço de Hilbert das sequências quadrado somáveis de números complexos, e considere A : `2 → `2 dada por A((x1 , x2 , . . . )) := (x2 , . . . ) Dado N ∈ N, observe que I, A, A2 , . . . , AN são isometrias (sobre sua imagem) quando restritos ao subespaço EN := {x ∈ `2 ; x = (0, . . . , 0 x1 , . . . )}. | {z } N vezes Claramente, a norma de A, e portanto a de An é menor ou igual a 1, para todo n ≥ 0 e o acima mostra que de fato sua norma é igual PN −1 a 1. Mais ainda, é fácil de verificar que N1 n=0 An também uma isometria sobre sua imagem quando restrita a EN . Logo, essa soma a Cesàro não converge em norma a zero. Entretanto, na topologia forte (pontual) é fácil ver que tal soma converge a zero (exercício 4). Teorema 5.24. (Ergódico de Von Neumann, generalizado.) Seja V um operador em um espaço de Hilbert H satisfazendo kV n k < C para todo n. Então N −1 1 X n V (f ) → P (f ), ∀f ∈ H, N n=0 192 Capítulo 5. O Operador Adjunto onde P é uma projeção (não necessariamente ortogonal) sobre {f ; V (f ) = f } = : F (V ). Prova: Note que F (V ) é claramente um subespaço fechado de H, já que é o núcleo de V − I, onde I é a identidade, logo, é o núcleo de uma aplicação contínua. Observamos também que N −1 1 X n PN (f ) := V (f ) ≤ (1/N ) · N kf k ≤ Ckf k. N n=0 E que se f ∈ F (V ) = ker(I − V ), então PN (f ) = f, ∀N . PorPN −1 tanto, N1 n=0 V n (f ) → P (f ), ∀f ∈ F (V ). Vejamos agora o que ocorre no espaço ran(I − V ) =: E(V ). Se f ∈ E(V ), então existe g ∈ H tal que f = g − V (g), logo temos: −1 −1 1 NX 1 NX V n (f ) = V n (g − V (g)) = N n=0 N n=0 1 1 g − V N (g) ≤ (kgk + Ckgk) → 0 quando N → +∞. N N Notamos que converge também para zero para toda f ∈ E(V ). Neste caso, existem E(V ) 3 fj → f e daí, −1 N −1 N −1 1 NX 1 X n 1 X n V n (fj ) − V (f ) = V (fj − f ) ≤ N n=0 N n=0 N n=0 ≤ N −1 1 X Ckfj − f k ≤ Ckfj − f k → 0, N n=0 implicando a afirmação que fizemos. Note que devido aos limites acima serem distintos em F (V ) e E(V ) temos que F (V ) ∩ E(V ) = {0}. Se mostrarmos que F (V ) ⊕ E(V ) = H, então teremos concluído a prova. Augusto Armando de Castro Júnior 193 Para ver isso, devemos considerar F (V ∗ ) : = ker(I−V ∗ ) e E(V ∗ ) = ran(I − V ∗ ). Como kV n k ≤ C, ∀n ∈ N, vale também que k(V ∗ )n k ≤ C, ∀n ∈ N. De fato, para qualquer operador linear contínuo A : H → H vale que (A∗ )n = (An )∗ e além do mais kAk = sup kA(v)k = sup kvk=1 sup sup < A(v), w >= kvk=1 kwk=1 sup < v, A∗ (w) >= sup kA∗ (w)k = kA∗ k. kwk=1 kvk=1 kwk=1 Logo, obtemos pelas mesmas contas que já fizemos para V que F (V ∗ ) e E(V ∗ ) têm intersecção trivial. Mas F (V )⊥ = ker(I − V )⊥ = ran(I − V ∗ ) = E(V ∗ ), e E(V )⊥ = ran(I − V )⊥ = ker(I − V ∗ ) = F (V ∗ ). Donde concluímos que (F (V ) + E(V ))⊥ = F (V ∗ ) ∩ E(V ∗ ) = {0}, ou seja, H = F (V ) + E(V ), como queríamos demonstrar. Observação 5.25. Note que se V fosse autoadjunto, a projeção seria ortogonal. Uma versão ainda mais elaborada do Teorema Ergódico Von Neumann foi apresentada por Thiago Bomfim em sua monografia de curso e trabalho de iniciação científica. Tal trabalho foi medalha de prata no V Simpósio Nacional / Jornadas de Iniciação Científica, em 2011, e encontra-se disponível no link: http://www.colmat.ufba.br/monografias?page=1 194 Capítulo 5. O Operador Adjunto Note o que o Teorema acima nos diz em particular: se um operador de norma menor ou igual a 1 possuir autovalor 1, ele nos dá um modo de calcular seu autoespaço (note que nesse caso, o autoespaço generalizado de 1 é um autoespaço ) Se por outro lado, tal espaço for trivial, então qualquer média de Birkhoff como do Teorema converge a zero. Para os próximos exemplos aplicando o teorema anterior, falaremos um pouco de transformações que preservam medidas. Dado um conjunto X, uma medida finita µ : A → [0, +∞), A ⊂ P(X) é uma função de conjunto tal que 1. µ(∅) = 0. 2. µ é σ−aditiva: ∞ µ(∪˙ n=1 An ) = ∞ X µ(An ), n=1 para toda união de conjuntos dois a dois disjuntos An da coleção A. Em geral, pede-se que a coleção A seja uma σ−álgebra, isto é, que seja fechada para uniões enumeráveis, intersecções enumeráveis e passagem ao complemento de seus membros. Dizemos que uma aplicação f : X → X preserva a medida µ se para todo A ∈ A, então f −1 (A) ∈ A e vale que µ(A) = µ(f −1 (A)). Dado um intervalo limitado I ⊂ R um exemplo bem conhecido de medida finita é a que atribui a cada subintervalo de I o seu comprimento. Claramente, a menor σ−álgebra que Augusto Armando de Castro Júnior 195 contém tais intervalos contém todos os abertos (e fechados) em I e de fato coincide com a menor σ−álgebra que contém os abertos de I, também chamada de σ−álgebra de Borel de I. Pensemos na seguinte situação-exemplo: Seja f : S 1 → S 1 a aplicação dada por f (z) := α ∗ z, α = eiθ ∈ S 1 , π/θ é irracional, onde o produto em questão é a multiplicação usual em C. Ou seja, f é dita uma rotação irracional do círculo S 1 . Dado um segmento de arco em S 1 , via coordenadas polares, podemos identificá-lo com um intervalo da reta de mesmo comprimento, e dessa forma transportar a medida do intervalo I = [0, 2π) para S 1 de maneira natural. Também uma função ϕ : S1 → R C é dita integrável se Z 2π Z |ϕ|(eit )dt < +∞, |ϕ|dm := S1 0 e nesse caso, sua integral é Z 2π Z ϕ(eit )dt < +∞. ϕdm := S1 0 Dado p ≥ 1, a exemplo dos espaços `p , podemos considerar Lp (S 1 , m) como o espaço das funções contínuas dotado da norma sZ kϕkp := p |ϕ|p dm S1 e definir Lp (S 1 , m) como o completamento de Lp (S 1 , m). Note que a integral também se estende de maneira natural ao completamento. 196 Capítulo 5. O Operador Adjunto Em particular para p = 2, é possível provar que tal completamento é um espaço de Hilbert. Interessantemente, U (ϕ) := ϕ ◦ f é uma isometria em cada um dos espaços Lp (S 1 , m), se estendendo continuamente de maneira única ao completamento. Note que ϕ ≡ 1 é autovetor do autovalor 1 desse operador. Concluímos do Teorema 5.24 que dado ϕ ∈ L2 (S 1 , m) que existe ϕ̃ ∈ L2 (S 1 , m) tal que −1 1 NX ϕ ◦ f n − ϕ̃ → 0 quando N → +∞. N n=0 2 5.2 Exercícios 1. Se um operador A : Cn → Cn tem λ1 , . . . , λr autovalores distintos, e para cada Tj := (λj I − A), j = 1, . . . , r, ker(Tj ) e Tj (Cn ) são espaços complementares, mostre que A é diagonalizável. 2. Mostre que se E é um espaço dotado de produto interno e Ê ⊂ E é um subespaço de dimensão finita, então E = Ê ⊕ Ê ⊥ . 3. Mostre que se E é um espaço dotado de produto interno e Ê ⊂ E é um subespaço completo, então E = Ê ⊕ Ê ⊥ . Enuncie e prove com tal hipótese uma versão mais geral do teorema de Pitágoras (lema 5.8 da página 178). 4. Prove que na topologia forte no espaço dos operadores a soma de Birkhoff do exemplo 5.23 da página 189 converge a zero. 199 Conclusão Chegamos ao fim de nosso texto, e não somos ainda capazes de construir um computador quântico, nem o reator de fusão nuclear. Vimos alguns algoritmos para um problema básico em Matemática, e muito útil em todas as modelagens que envolvam problemas lineares ou quadráticos: o cálculo de autoespaços e autovalores. Podemos aplicar tais técnicas a calcular posições de times esportivos, buscar páginas na Internet com respeito a uma palavra chave. Tais cálculos, aplicados por exemplo sobre uma matriz de variância-covariância das temperaturas de nosso planeta, permitem perceber correlações estatísticas de temperatura entre as diversas regiões da Terra. Em uma superfície suave, permitem calcular as linhas de curvatura principais em cada ponto. Tantos diferentes problemas, resolvidos com apenas um método... Imaginem quantos outros podemos resolver com toda a Matemática feita e por fazer! Imaginem... 201 Referências [1] Armando Castro, Curso de Teoria Espectral, preprint UFBA (2014). [2] Armando Castro, Curso de Topologia e Análise, preprint UFBA (2013). [3] Armando Castro, New criteria for hyperbolicity based on periodic sets, Bulletin of the Brazilian Mathematical Society 42 (3), 455-483 (2011). [4] Armando Castro, Curso de Equações Diferenciais Ordinárias; submetido a publicação pelo Projeto Euclides, IMPA. (2008) [5] Armando Castro, Curso de Teoria da Medida, 2a. edição; Projeto Euclides, IMPA/CNPq, 2008. [6] Armando Castro, N. Medeiros, V. Pinheiro, Isolated Periodic Points and Zeros of Operator Functions, preprint UFBA (2008). [7] V. Baladi. Positive transfer operators and decay of correlations. World Scientific Publishing Co. Inc., 2000. [8] Thiago Bomfim, Uma generalização do teorema de John von Neumann, Monografia de Curso, UFBA, (2009). Disponível em http://www.colmat.ufba.br/monografias?page=1. [9] T. Kato, Perturbation Theory for Linear Operators, Springer Verlag, 1980. 202 Referências [10] E. L. Lima, Curso de Análise I, Projeto Euclides, IMPA/CNPq, 1982. [11] E. L. Lima, Espaços Métricos, Projeto Euclides, IMPA/CNPq, 1983. [12] E. L. Lima, Curso de Análise II, Projeto Euclides, IMPA/CNPq, 1985. [13] E. L. Lima, Análise no Espaço Rn , Coleção Matemática Universitária, IMPA/CNPq, 2002. [14] N. Dunford, J. T. Schwartz, Linear Operators, Interscience Publishers, New York, 1958. [15] M. Reed, B. Simon, Methods of Modern Mathematical Physics, vol I: Functional Analysis, Academic Press, New York and London, 1975. [16] C. Liverani, Decay of correlations, Annals of Math., 142, 239–301, 1995. [17] R. Mañé, Ergodic Theory and Differentiable Dynamics, Springer Verlag, Berlin, 1987. [18] W. Rudin, Functional Analysis, McGraw-Hill Book Company, 1973. [19] W. Rudin, Real and Complex Analysis, 3d. Edition, McGraw-Hill Book Company, 1987. [20] M. G. Soares, Cálculo em uma variável complexa, Coleção Matemática Universitária, IMPA/CNPq, 2001. [21] M. Viana, Stochastic dynamics of deterministic systems, Colóquio Brasileiro de Matemática, 1997. Referências 203 [22] K. Yosida, Functional Analysis, 6th. Edition, SpringerVerlag, 1980.