Os conjuntos compactos são uma das noções centrais da análise matemática. Descrevem conjuntos que, podendo embora conter infinitos pontos, conservam algumas propriedades típicas dos conjuntos finitos.
A importância da compacidade reside no facto de que, sobre os conjuntos compactos, muitas propriedades fundamentais ficam garantidas: toda a sucessão de pontos do conjunto admite uma subsucessão convergente para um ponto do conjunto, as funções contínuas atingem máximo e mínimo, e as coberturas abertas podem reduzir-se a um número finito de abertos.
Nesta exposição introduziremos a definição de conjunto compacto por meio das coberturas abertas, esclareceremos o seu significado intuitivo e analisaremos os primeiros exemplos fundamentais. A relação entre compacidade e o facto de ser fechado e limitado será depois precisada no teorema de Heine-Borel.
Índice
- Ideia intuitiva de conjunto compacto
- Definição de cobertura aberta
- Definição de conjunto compacto
- Significado da definição
- Primeiros exemplos de conjuntos compactos
- Primeiros exemplos de conjuntos não compactos
- Compacidade e sucessões
- Compacidade e funções contínuas
- Por que razão fechado e limitado não é a definição de compacto
- Resumo final
Ideia intuitiva de conjunto compacto
A ideia intuitiva de compacidade é a de um conjunto que não apresenta nem fugas para o infinito nem pontos em falta ali onde o conjunto tende a acumular-se.
Por exemplo, o intervalo
\[ [0,1] \]
é um conjunto que se afigura, intuitivamente, bem controlado: é limitado, porque todos os seus pontos se situam entre \(0\) e \(1\), e é fechado, porque contém também os seus extremos.
Pelo contrário, o intervalo
\[ (0,1) \]
não contém os extremos \(0\) e \(1\). Ainda que todos os seus pontos permaneçam compreendidos entre \(0\) e \(1\), o conjunto apresenta dois pontos de acumulação em falta. Com efeito, é possível aproximar-se indefinidamente de \(0\) ou de \(1\) permanecendo dentro de \((0,1)\), mas nem \(0\) nem \(1\) pertencem ao conjunto.
Também o intervalo
\[ [0,+\infty) \]
não é compacto. Neste caso o problema não é a ausência de extremos, mas a possibilidade de afastamento indefinido para \(+\infty\).
A compacidade formaliza precisamente esta ideia: um conjunto compacto não apresenta fugas para o infinito nem pontos de acumulação em falta. Do ponto de vista da análise, é um conjunto que pode ser controlado com um número finito de dados.
Definição de cobertura aberta
Antes de definir os conjuntos compactos, devemos introduzir o conceito de cobertura aberta.
Nesta exposição, sempre que falarmos de abertos de \(\mathbb R\), entenderemos sempre os abertos no sentido usual: por exemplo os intervalos abertos \((a,b)\) e as reuniões de intervalos abertos.
Seja \(A\subseteq \mathbb R\). Uma família de conjuntos abertos
\[ \{U_i\}_{i\in I} \]
diz-se uma cobertura aberta de \(A\) se todo o ponto de \(A\) pertence a, pelo menos, um dos abertos da família.
Em símbolos, a família \(\{U_i\}_{i\in I}\) é uma cobertura aberta de \(A\) se
\[ A\subseteq \bigcup_{i\in I} U_i. \]
O conjunto \(I\) chama-se conjunto de índices e pode ser finito ou infinito.
Dizer que \(\{U_i\}_{i\in I}\) cobre \(A\) significa, portanto, que nenhum ponto de \(A\) fica fora da reunião dos abertos \(U_i\).
Exemplo de cobertura aberta
Consideremos o conjunto
\[ A=[0,1]. \]
A família de intervalos abertos
\[ U_n=\left(-\frac{1}{n},1+\frac{1}{n}\right), \qquad n\in\mathbb N,\ n\geq 1, \]
é uma cobertura aberta de \(A\). Com efeito, para todo o \(n\geq 1\) tem-se
\[ [0,1]\subseteq \left(-\frac{1}{n},1+\frac{1}{n}\right). \]
Em particular,
\[ [0,1]\subseteq \bigcup_{n=1}^{+\infty} \left(-\frac{1}{n},1+\frac{1}{n}\right). \]
Assim, todo o ponto do intervalo \([0,1]\) pertence a, pelo menos, um dos abertos da família.
Subcobertura
Se \(\{U_i\}_{i\in I}\) é uma cobertura aberta de \(A\), uma subcobertura é uma subfamília de abertos que continua a cobrir \(A\).
Mais precisamente, se \(J\subseteq I\), a família
\[ \{U_j\}_{j\in J} \]
é uma subcobertura de \(A\) se
\[ A\subseteq \bigcup_{j\in J} U_j. \]
Uma subcobertura diz-se finita se consta apenas de um número finito de abertos.
Definição de conjunto compacto
Podemos agora dar a definição fundamental.
Um conjunto \(K\subseteq \mathbb R\) diz-se compacto se de toda a cobertura aberta de \(K\) for possível extrair uma subcobertura finita.
Por outras palavras, \(K\) é compacto se, sempre que uma família de abertos cobre \(K\), existirem então um número finito de abertos da família que ainda bastam para cobrir todo o \(K\).
Em símbolos, \(K\subseteq \mathbb R\) é compacto se, para toda a família de abertos \(\{U_i\}_{i\in I}\) tal que
\[ K\subseteq \bigcup_{i\in I} U_i, \]
existem índices \(i_1,i_2,\ldots,i_m\in I\), com \(m\in\mathbb N\), tais que
\[ K\subseteq U_{i_1}\cup U_{i_2}\cup \cdots \cup U_{i_m}. \]
Esta é a definição de compacidade por meio de coberturas abertas.
Uma observação importante
A definição não afirma que \(K\) possa ser coberto por um número finito de abertos escolhidos à vontade. Afirma algo mais subtil: qualquer que seja a cobertura aberta dada, mesmo que formada por infinitos abertos, é sempre possível seleccionar um número finito deles que ainda cubra todo o \(K\).
Por conseguinte, a compacidade é uma propriedade global do conjunto \(K\), pois diz respeito a todas as coberturas abertas possíveis de \(K\).
Significado da definição
À primeira vista, a definição de compacidade pode parecer abstracta. O seu significado profundo é, todavia, muito concreto: um conjunto compacto é um conjunto que nunca exige infinitas informações essenciais para ser controlado por meio de abertos.
Suponhamos que pretendemos cobrir um conjunto \(K\) com uma família de abertos. Se \(K\) é compacto, então, mesmo quando a cobertura contém infinitos abertos, apenas um número finito deles é realmente necessário para cobrir todo o \(K\).
Este comportamento é semelhante ao dos conjuntos finitos. Com efeito, se
\[ A=\{x_1,x_2,\ldots,x_m\}, \]
então toda a cobertura aberta de \(A\) admite sempre uma subcobertura finita. Basta escolher, para cada ponto \(x_j\), um aberto da cobertura que o contenha.
A compacidade estende esta propriedade aos conjuntos infinitos. Um compacto pode conter infinitos pontos, mas continua a ter um comportamento finito relativamente às coberturas abertas.
Por que razão a definição usa os abertos?
Os abertos são os conjuntos que descrevem as vizinhanças dos pontos. Por esta razão as coberturas abertas permitem estudar um conjunto através de informação local.
Dizer que um conjunto é compacto significa, então, que sempre que ele é controlado localmente por meio de abertos, esse controlo pode reduzir-se a um controlo finito.
Esta ideia está na base de muitos teoremas fundamentais da análise. Por exemplo, o facto de uma função contínua sobre um conjunto compacto atingir máximo e mínimo depende precisamente da possibilidade de passar de informação local a um número finito de informações globais.
Primeiros exemplos de conjuntos compactos
Vejamos alguns exemplos fundamentais. Nesta fase apoiar-nos-emos sobretudo na intuição geométrica da compacidade; a caracterização completa dos conjuntos compactos de \(\mathbb R\) será precisada no teorema de Heine-Borel.
Intervalos fechados e limitados
Os intervalos do tipo
\[ [a,b], \qquad a,b\in\mathbb R,\ a\leq b, \]
são os primeiros exemplos fundamentais de conjuntos compactos em \(\mathbb R\).
São limitados, porque todos os seus pontos estão compreendidos entre \(a\) e \(b\), e são fechados, porque contêm também os extremos \(a\) e \(b\).
O facto de todo o intervalo fechado e limitado ser compacto é um resultado profundo da análise real. Nesta exposição usá-lo-emos como exemplo fundamental; a caracterização geral dos conjuntos compactos de \(\mathbb R\), por sua vez, será precisada pelo teorema de Heine-Borel.
Conjuntos finitos
Todo o conjunto finito de números reais é compacto.
Com efeito, seja
\[ A=\{x_1,x_2,\ldots,x_m\}. \]
Consideremos uma cobertura aberta qualquer de \(A\):
\[ A\subseteq \bigcup_{i\in I} U_i. \]
Uma vez que a cobertura cobre \(A\), para cada ponto \(x_j\in A\) existe, pelo menos, um índice \(i_j\in I\) tal que
\[ x_j\in U_{i_j}. \]
Logo, os abertos
\[ U_{i_1},U_{i_2},\ldots,U_{i_m} \]
cobrem todos os pontos de \(A\). Portanto
\[ A\subseteq U_{i_1}\cup U_{i_2}\cup\cdots\cup U_{i_m}. \]
Extraímos assim uma subcobertura finita. Por definição, \(A\) é compacto.
O conjunto formado por uma sucessão convergente e pelo seu limite
Outro exemplo importante é o conjunto
\[ K=\left\{0\right\}\cup\left\{\frac{1}{n}:n\in\mathbb N,\ n\geq 1\right\}. \]
Este conjunto é infinito, mas é compacto.
Intuitivamente, os pontos
\[ 1,\frac12,\frac13,\frac14,\ldots \]
acumulam-se unicamente em \(0\), e o ponto \(0\) pertence ao conjunto. Não há, por isso, pontos de acumulação em falta.
Além disso, o conjunto é limitado, porque todos os seus elementos pertencem ao intervalo \([0,1]\).
Vejamos directamente por que razão este conjunto é compacto usando a definição com coberturas abertas.
Seja \(\{U_i\}_{i\in I}\) uma cobertura aberta de \(K\). Uma vez que \(0\in K\), existe um aberto \(U_{i_0}\) da cobertura tal que
\[ 0\in U_{i_0}. \]
Como \(U_{i_0}\) é aberto, existe \(r>0\) tal que
\[ (-r,r)\subseteq U_{i_0}. \]
Visto que
\[ \frac1n\to 0, \]
existe \(N\in\mathbb N\) tal que, para todo o \(n\geq N\),
\[ \frac1n\in (-r,r)\subseteq U_{i_0}. \]
Assim, o aberto \(U_{i_0}\) cobre \(0\) e todos os pontos \(\displaystyle \frac1n\) a partir de certo índice.
Resta apenas um número finito de pontos:
\[ 1,\frac12,\ldots,\frac{1}{N-1}. \]
Para cada um destes pontos escolhemos um aberto da cobertura que o contenha. Deste modo obtemos um número finito de abertos que, juntamente com \(U_{i_0}\), cobrem todo o \(K\).
Logo, toda a cobertura aberta de \(K\) admite uma subcobertura finita. Por conseguinte, \(K\) é compacto.
Primeiros exemplos de conjuntos não compactos
Para compreender verdadeiramente a compacidade é importante observar também exemplos de conjuntos que não são compactos. Em geral, um conjunto pode deixar de ser compacto por ser demasiado grande, ou então por ter pontos de acumulação que não pertencem ao conjunto.
O intervalo aberto \((0,1)\)
O intervalo
\[ (0,1) \]
não é compacto.
A razão intuitiva é que o conjunto se aproxima dos extremos \(0\) e \(1\), mas não os contém. Em particular, \(0\) e \(1\) são pontos de acumulação do conjunto, mas não pertencem a \((0,1)\).
Vejamos como este defeito se manifesta na definição através de coberturas abertas.
Consideremos a família de abertos
\[ U_n=\left(\frac1n,1-\frac1n\right), \qquad n\in\mathbb N,\ n\geq 3. \]
A família \(\{U_n\}_{n\geq 3}\) é uma cobertura aberta de \((0,1)\). Com efeito, se \(x\in(0,1)\), então
\[ x>0 \qquad \text{e} \qquad 1-x>0. \]
Podemos, pois, escolher \(n\) suficientemente grande de modo que
\[ \frac1n<x \qquad \text{e} \qquad \frac1n<1-x. \]
Destas desigualdades resulta que
\[ \frac1n<x<1-\frac1n, \]
isto é,
\[ x\in U_n. \]
Logo
\[ (0,1)\subseteq \bigcup_{n=3}^{+\infty} \left(\frac1n,1-\frac1n\right). \]
Esta cobertura, contudo, não admite qualquer subcobertura finita.
Com efeito, ao escolher um número finito de abertos da família, existe um índice máximo \(N\) entre os escolhidos. Visto que os intervalos \(U_n\) crescem à medida que \(n\) aumenta, a reunião finita dos abertos escolhidos está contida em
\[ \left(\frac{1}{N},1-\frac{1}{N}\right). \]
Mas o ponto
\[ \frac{1}{2N} \]
pertence a \((0,1)\) e não pertence a \(\left(\displaystyle \frac{1}{N},1-\displaystyle \frac{1}{N}\right)\). Por isso, a reunião finita dos abertos escolhidos não cobre todo o \((0,1)\).
Encontrámos, pois, uma cobertura aberta de \((0,1)\) que não admite qualquer subcobertura finita. Por definição, \((0,1)\) não é compacto.
A semirrecta \([0,+\infty)\)
Também a semirrecta
\[ [0,+\infty) \]
não é compacta.
Neste caso o problema não é a ausência de um extremo esquerdo, pois \(0\) pertence ao conjunto. O problema é a falta de limitação: os pontos do conjunto podem afastar-se indefinidamente para \(+\infty\).
Consideremos a família de abertos
\[ U_n=(-1,n), \qquad n\in\mathbb N,\ n\geq 1. \]
Ela é uma cobertura aberta de \([0,+\infty)\). Com efeito, se \(x\in[0,+\infty)\), basta escolher um inteiro \(n>x\), e então
\[ x\in (-1,n)=U_n. \]
Logo
\[ [0,+\infty)\subseteq \bigcup_{n=1}^{+\infty} (-1,n). \]
Não existe, todavia, qualquer subcobertura finita. Se escolhermos apenas um número finito destes abertos, existe um índice máximo \(N\), e a reunião finita está contida em
\[ (-1,N). \]
Mas o ponto \(N+1\) pertence a \([0,+\infty)\) e não pertence a \((-1,N)\).
Logo, a família \(\{(-1,n)\}_{n\geq 1}\) é uma cobertura aberta de \([0,+\infty)\) sem subcoberturas finitas. Por isso, \([0,+\infty)\) não é compacto.
O conjunto \(\left\{\displaystyle \frac1n:n\in\mathbb N,\ n\geq 1\right\}\)
Consideremos agora o conjunto
\[ A=\left\{\frac1n:n\in\mathbb N,\ n\geq 1\right\}. \]
Este conjunto não é compacto.
Com efeito, os seus pontos acumulam-se em \(0\), mas \(0\notin A\). O conjunto tem, por isso, um ponto de acumulação em falta.
Podemos ver o problema também através das sucessões: a sucessão
\[ x_n=\frac1n \]
está inteiramente contida em \(A\), mas converge para \(0\), que não pertence a \(A\).
Isto mostra por que razão, para obter um conjunto compacto, não basta considerar os pontos \(\displaystyle \frac1n\): há que acrescentar também o seu limite \(0\).
Com efeito, o conjunto
\[ \left\{0\right\}\cup \left\{\frac1n:n\in\mathbb N,\ n\geq 1\right\} \]
é compacto, como vimos na secção anterior.
Compacidade e sucessões
A compacidade está estreitamente ligada ao comportamento das sucessões. Em \(\mathbb R\), um conjunto compacto pode também reconhecer-se através de uma propriedade sucessional: toda a sucessão dos seus pontos admite uma subsucessão convergente cujo limite ainda pertence ao conjunto.
Esta propriedade exprime, sob forma sucessional, a ideia de que, dentro de um compacto, não é possível nem fugir para o infinito nem convergir para um ponto de acumulação em falta.
Caracterização sucessional da compacidade
Um conjunto \(K\subseteq\mathbb R\) é compacto se e só se toda a sucessão \((x_n)\) de pontos de \(K\) admite uma subsucessão \((x_{n_k})\) convergente para um ponto \(x\in K\).
Em símbolos:
\[ K \text{ é compacto} \quad \Longleftrightarrow \quad \forall (x_n)\subseteq K,\ \exists (x_{n_k}) \text{ tal que } x_{n_k}\to x\in K. \]
Este resultado permite interpretar a compacidade de maneira muito concreta: qualquer que seja a sucessão escolhida dentro de \(K\), é sempre possível extrair uma subsucessão que converge sem sair do conjunto.
Sucessões que fogem para o infinito
Consideremos a semirrecta
\[ [0,+\infty). \]
A sucessão
\[ x_n=n \]
está inteiramente contida em \([0,+\infty)\), mas não admite qualquer subsucessão convergente em \(\mathbb R\), pois toda a sua subsucessão tende para \(+\infty\).
Isto mostra, do ponto de vista sucessional, por que razão \([0,+\infty)\) não é compacto.
Sucessões que convergem para um ponto em falta
Consideremos o intervalo aberto
\[ (0,1). \]
A sucessão
\[ x_n=\frac1n \]
está contida em \((0,1)\) para todo o \(n\geq 2\), mas converge para \(0\), que não pertence a \((0,1)\).
Toda a subsucessão de \(\left(\displaystyle \frac1n\right)\) converge de novo para \(0\). Logo, não existe qualquer subsucessão convergente para um ponto de \((0,1)\).
Isto mostra que \((0,1)\) não é compacto porque possui um ponto de acumulação em falta.
Sucessões num conjunto compacto
Consideremos, pelo contrário, o conjunto
\[ K=\left\{0\right\}\cup\left\{\frac1n:n\in\mathbb N,\ n\geq 1\right\}. \]
Toda a sucessão de pontos de \(K\) admite uma subsucessão convergente para um ponto de \(K\).
Com efeito, dada uma sucessão \((x_n)\subseteq K\), podem ocorrer dois casos.
Se, pelo menos, um dos pontos de \(K\) figura infinitas vezes na sucessão, então pode extrair-se uma subsucessão constante. Toda a subsucessão constante converge para o seu valor constante, que pertence a \(K\).
Se, pelo contrário, nenhum ponto de \(K\) figura infinitas vezes, então a sucessão deve tomar infinitos valores distintos do conjunto. Visto que os únicos pontos distintos de \(K\), para além de \(0\), são da forma \(\displaystyle \frac1n\), podemos extrair uma subsucessão do tipo
\[ \frac{1}{n_k}, \qquad n_k\to+\infty. \]
Por conseguinte
\[ \frac{1}{n_k}\to 0. \]
Visto que \(0\in K\), também neste caso o limite da subsucessão pertence a \(K\).
Este exemplo evidencia o papel essencial do ponto \(0\): acrescentar o limite da sucessão \(\displaystyle \frac1n\) transforma um conjunto não compacto num conjunto compacto.
Compacidade e funções contínuas
Uma das principais razões pelas quais os conjuntos compactos são tão importantes é o seu comportamento relativamente às funções contínuas.
Sobre um conjunto compacto, uma função contínua não pode oscilar de maneira descontrolada, não pode crescer indefinidamente e não pode aproximar-se de um extremo sem o atingir.
Imagem contínua de um compacto
Se \(K\subseteq\mathbb R\) é compacto e \(f:K\to\mathbb R\) é contínua, então a imagem
\[ f(K)=\{f(x):x\in K\} \]
é um conjunto compacto de \(\mathbb R\).
Isto significa que a compacidade é conservada pelas funções contínuas.
A ideia é a seguinte: se uma função é contínua, então o controlo local dos valores de \(f\) pode reconduzir-se ao controlo local dos pontos do domínio. Visto que o domínio compacto permite reduzir todo o controlo aberto a um número finito de informações, também a imagem conserva uma propriedade de compacidade.
Existência de máximo e mínimo
Uma consequência fundamental é o teorema de Weierstrass.
Se \(K\subseteq\mathbb R\) é compacto e \(f:K\to\mathbb R\) é contínua, então \(f\) atinge máximo e mínimo absolutos em \(K\).
Isto é, existem \(x_m,x_M\in K\) tais que
\[ f(x_m)\leq f(x)\leq f(x_M) \qquad \text{para todo } x\in K. \]
Neste caso \(f(x_m)\) é o mínimo absoluto de \(f\) em \(K\), ao passo que \(f(x_M)\) é o máximo absoluto de \(f\) em \(K\).
A compacidade do domínio é essencial. Sem compacidade, uma função contínua pode não ter máximo, mínimo, ou ambos.
Por que razão a compacidade é necessária?
Consideremos a função
\[ f(x)=x \]
definida sobre o intervalo aberto \((0,1)\).
A função é contínua, mas não atinge nem mínimo nem máximo em \((0,1)\). Com efeito, os valores de \(f\) aproximam-se arbitrariamente de \(0\) e de \(1\), mas nem \(0\) nem \(1\) são valores tomados pela função sobre o domínio.
Mais precisamente,
\[ f((0,1))=(0,1). \]
A imagem não contém nem o seu próprio ínfimo \(0\) nem o seu próprio supremo \(1\).
Consideremos, pelo contrário, a mesma função sobre o intervalo compacto \([0,1]\). Neste caso
\[ f([0,1])=[0,1], \]
e a função atinge o mínimo em \(0\) e o máximo em \(1\).
Este exemplo mostra que a compacidade impede que os extremos permaneçam meros valores-limite não atingidos.
Por que razão fechado e limitado não é a definição de compacto
Em \(\mathbb R\), os conjuntos compactos estão profundamente ligados aos conjuntos fechados e limitados. É importante, porém, não confundir uma caracterização com a definição.
A definição de conjunto compacto é a que assenta nas coberturas abertas:
\[ K \text{ é compacto} \quad \Longleftrightarrow \quad \text{toda a cobertura aberta de } K \text{ admite uma subcobertura finita.} \]
O facto de, na recta real, os conjuntos compactos coincidirem com os conjuntos fechados e limitados é um resultado fundamental, e não uma definição.
Este resultado será estudado no teorema de Heine-Borel, que fornece uma das caracterizações mais importantes da compacidade em \(\mathbb R\).
Por que razão é importante esta distinção?
A distinção é importante porque a compacidade nasce como propriedade das coberturas abertas, pelo que diz respeito ao modo como um conjunto pode ser coberto por meio de abertos.
A limitação, por seu lado, depende da distância e da ordem da recta real. Noutros contextos matemáticos, a relação entre compacidade e o facto de ser fechado e limitado pode mudar.
Por esta razão é mais correcto dizer que em \(\mathbb R\) a compacidade pode caracterizar-se pelo facto de o conjunto ser fechado e limitado, mas que a sua definição geral continua a ser a dada em termos de coberturas abertas.
Em síntese, a compacidade define-se por meio das coberturas abertas, ao passo que a relação com ser fechado e limitado é uma caracterização específica da recta real:
\[ \text{compacidade por meio de coberturas abertas} \qquad \text{definição geral}; \]
\[ \text{compacto em } \mathbb R \quad \Longleftrightarrow \quad \text{fechado e limitado} \qquad \text{caracterização em } \mathbb R. \]
Esta distinção é essencial: a definição introduz o conceito, ao passo que o teorema de Heine-Borel fornece um critério prático para o reconhecer na recta real.
Resumo final
Um conjunto compacto é um conjunto que, relativamente às coberturas abertas, se comporta como um conjunto finito: toda a cobertura aberta admite uma subcobertura finita.
Formalmente, um conjunto \(K\subseteq\mathbb R\) é compacto se, para toda a família de abertos \(\{U_i\}_{i\in I}\) tal que
\[ K\subseteq \bigcup_{i\in I} U_i, \]
existem \(i_1,\ldots,i_m\in I\) tais que
\[ K\subseteq U_{i_1}\cup\cdots\cup U_{i_m}. \]
Os conjuntos compactos excluem dois fenómenos típicos dos conjuntos não compactos: a fuga para o infinito e a convergência para pontos de acumulação em falta.
Do ponto de vista das sucessões, um conjunto compacto de \(\mathbb R\) é um conjunto em que toda a sucessão admite uma subsucessão convergente para um ponto do conjunto.
Do ponto de vista das funções contínuas, a compacidade garante propriedades fundamentais: a imagem contínua de um compacto é compacta e toda a função contínua real definida sobre um compacto atinge máximo e mínimo absolutos.
A relação precisa entre compacidade e o facto de ser fechado e limitado na recta real será expressa pelo teorema de Heine-Borel.