Math ClubMath Club
v1 · padrão canônico

Lição 113 — Núcleo e imagem

Núcleo (kernel), imagem (range), posto e nulidade. Teorema posto-nulidade. As duas estruturas associadas a toda transformação linear que respondem 'quem morre?' e 'até onde chega?'

Used in: 3.º ano do EM avançado · Equiv. Lineare Algebra Leistungskurs alemão · Equiv. H2 Mathematics Singapura · Equiv. Linear Algebra MIT 18.06

dimV=dimkerT+dimIm(T)\dim V = \dim \ker T + \dim \operatorname{Im}(T)

O teorema posto-nulidade (rank-nullity theorem) diz que a dimensão do domínio é exatamente a soma da dimensão do que "morre" com TT (o núcleo) e a dimensão do que é atingível (a imagem). É o resultado mais central da álgebra linear aplicada.

Choose your door

Rigorous notation, full derivation, hypotheses

Definições e teorema central

Núcleo e imagem

"The null space of TT, denoted N(T)\mathcal{N}(T), is the set N(T)={vV:T(v)=0}\mathcal{N}(T) = \{v \in V : T(v) = 0\}." — Beezer, A First Course in Linear Algebra, §KER

"The range of TT, denoted R(T)\mathcal{R}(T), is the set R(T)={T(v):vV}\mathcal{R}(T) = \{T(v) : v \in V\}." — Beezer, A First Course in Linear Algebra, §RNG

Os quatro subespaços fundamentais

Para ARm×nA \in \mathbb{R}^{m \times n} com posto rr:

Domínio: ℝⁿEspaço-linhadim rNúcleo ker Adim n−rAContradomínio: ℝᵐImagem Col(A)dim rNúcleo de Aᵀdim m−rEspaço-linha ⊥ ker(A)Col(A) ⊥ ker(Aᵀ)

Os quatro subespaços fundamentais de Strang. O posto r aparece em dois lugares; a nulidade n-r e m-r preenchem o complemento ortogonal.

Caracterizações de injetividade e sobrejetividade

Exemplos resolvidos

Exercise list

34 exercises · 8 with worked solution (25%)

Application 17Understanding 4Modeling 4Challenge 1Proof 8
  1. Ex. 113.1ApplicationAnswer key

    Determine o núcleo de T:R2R2T: \mathbb{R}^2 \to \mathbb{R}^2, T(x,y)=(x+y,  x+y)T(x, y) = (x + y, \; x + y).

    Show solution
    Para T(x,y)=(x+y,  x+y)T(x,y) = (x+y,\; x+y): T(x,y)=(0,0)    x+y=0T(x,y) = (0,0) \iff x + y = 0. Logo kerT={(t,t):tR}=span{(1,1)}\ker T = \{(t, -t) : t \in \mathbb{R}\} = \operatorname{span}\{(1,-1)\}, de dimensão 1.
    Show step-by-step (with the why)
    1. Escreva a condição T(x,y)=(0,0)T(x,y) = (0,0), que dá x+y=0x + y = 0. Por quê: o núcleo é exatamente o conjunto de entradas levadas ao vetor zero.
    2. Parametrize: faça x=tx = t, então y=ty = -t. Vetor gerador: (1,1)(1, -1).
    3. Conclusão: kerT=span{(1,1)}\ker T = \operatorname{span}\{(1,-1)\}, dimensão 1.

    Macete: núcleo de transformação m×nm \times n tem dimensão nposton - \operatorname{posto}. Aqui posto=1\operatorname{posto} = 1 (a imagem é a reta y=xy = x), logo nulidade =21=1= 2 - 1 = 1.

  2. Ex. 113.2Application

    Determine a imagem de T(x,y)=(x+y,x+y)T(x,y) = (x+y, x+y) e sua dimensão.

    Show solution
    Im(T)={T(x,y):x,yR}={(x+y,x+y):x,yR}={(s,s):sR}\operatorname{Im}(T) = \{T(x,y) : x,y \in \mathbb{R}\} = \{(x+y, x+y) : x,y \in \mathbb{R}\} = \{(s,s) : s \in \mathbb{R}\}. A imagem é a reta y=xy = x, dimensão 1.
  3. Ex. 113.3ApplicationAnswer key

    Verifique o teorema posto-nulidade para T(x,y)=(x+y,  x+y)T(x,y) = (x+y,\; x+y) usando os resultados dos dois exercícios anteriores.

    Show solution
    Nulidade =1= 1, posto =1= 1. Soma: 1+1=2=dimR21 + 1 = 2 = \dim \mathbb{R}^2. Teorema posto-nulidade verificado.
  4. Ex. 113.4ApplicationAnswer key

    Para A=(1236)A = \begin{pmatrix} 1 & 2 \\ 3 & 6 \end{pmatrix}, determine núcleo, imagem, posto e nulidade.

    Show solution
    Escalonando: (1236)(1200)\begin{pmatrix}1&2\\3&6\end{pmatrix} \to \begin{pmatrix}1&2\\0&0\end{pmatrix}. Posto =1= 1. Nulidade =21=1= 2-1=1. kerA=span{(2,1)}\ker A = \operatorname{span}\{(-2,1)\}. Im(A)=span{(1,3)}\operatorname{Im}(A) = \operatorname{span}\{(1,3)\}.
    Show step-by-step (with the why)
    1. Escalone AA: L2L23L1L_2 \leftarrow L_2 - 3L_1 anula a segunda linha. Pivô apenas na coluna 1.
    2. Posto =1= 1. Nulidade =21=1= 2 - 1 = 1.
    3. Núcleo: variável livre x2=tx_2 = t, então x1=2tx_1 = -2t. Gerador: (2,1)(-2, 1).
    4. Imagem: 1ª coluna de AA original: (1,3)(1, 3).

    Observação: a 2ª linha ser múltipla da 1ª é o sinal de posto reduzido antes de calcular.

  5. Ex. 113.5Application

    Para A=(101011)A = \begin{pmatrix} 1 & 0 & 1 \\ 0 & 1 & 1 \end{pmatrix}, determine núcleo e imagem.

    Show solution
    Escalonando AA: duas linhas, dois pivôs, posto =2= 2. Variável livre: x3x_3. kerA=span{(1,1,1)}\ker A = \operatorname{span}\{(-1,-1,1)\}. Imagem = R2\mathbb{R}^2 (sobrejetiva).
  6. Ex. 113.6Application

    Determine o posto de A=(123456789)A = \begin{pmatrix} 1 & 2 & 3 \\ 4 & 5 & 6 \\ 7 & 8 & 9 \end{pmatrix}. (Resp: 2.)

    Show solution
    Escalonando pelo método de Gauss, a 2ª linha vira (0,1,0)(0,1,0) após eliminação e a 3ª linha zera. Posto =2= 2.
  7. Ex. 113.7Application

    Determine o núcleo do operador derivação D:P3P3D: \mathcal{P}_3 \to \mathcal{P}_3, D(p)=pD(p) = p'. (Resp: polinômios constantes.)

    Show solution
    D(p)=0    p=0    pD(p) = 0 \iff p' = 0 \iff p é constante. Portanto kerD={pP3:p constante}=span{1}\ker D = \{p \in \mathcal{P}_3 : p \text{ constante}\} = \operatorname{span}\{1\}, dimensão 1.
  8. Ex. 113.8Application

    Determine a imagem de D:P3P3D: \mathcal{P}_3 \to \mathcal{P}_3, D(p)=pD(p) = p'. (Resp: P2\mathcal{P}_2.)

    Show solution
    Im(D)=span{D(t),D(t2),D(t3)}=span{1,2t,3t2}=P2\operatorname{Im}(D) = \operatorname{span}\{D(t), D(t^2), D(t^3)\} = \operatorname{span}\{1, 2t, 3t^2\} = \mathcal{P}_2. Dimensão 3.
  9. Ex. 113.9Application

    Verifique o teorema posto-nulidade para D:P3P3D: \mathcal{P}_3 \to \mathcal{P}_3.

    Show solution
    Nulidade =1= 1 (constantes), posto =3= 3 (P2\mathcal{P}_2). Soma 1+3=4=dimP31 + 3 = 4 = \dim \mathcal{P}_3. ✓
  10. Ex. 113.10Application

    Para T:R3R2T: \mathbb{R}^3 \to \mathbb{R}^2, T(x,y,z)=(xy,  yz)T(x,y,z) = (x-y,\; y-z), determine núcleo e imagem.

    Show solution
    T(x,y,z)=(0,0)    x=yT(x,y,z) = (0,0) \iff x=y e y=zy=z. Núcleo: {(t,t,t):tR}\{(t,t,t) : t \in \mathbb{R}\}, dim 1. Imagem: R2\mathbb{R}^2 (posto 2).
  11. Ex. 113.11Application

    Determine o posto da matriz de Vandermonde (111124139)\begin{pmatrix} 1 & 1 & 1 \\ 1 & 2 & 4 \\ 1 & 3 & 9 \end{pmatrix}.

    Show solution
    A matriz de Vandermonde com nós distintos é sempre invertível. Posto =3= 3.
  12. Ex. 113.12ApplicationAnswer key

    Determine o núcleo e a imagem da projeção ortogonal de R2\mathbb{R}^2 sobre a reta y=xy = x.

    Show solution
    Projeção em y=xy=x: P(x,y)=x+y2(1,1)P(x,y) = \frac{x+y}{2}(1,1). Núcleo: vetores ortogonais a (1,1)(1,1), i.e., span{(1,1)}\operatorname{span}\{(1,-1)\}. Imagem: span{(1,1)}\operatorname{span}\{(1,1)\}.
  13. Ex. 113.13Application

    AA é uma matriz 3×53 \times 5 com posto 3. Qual é a dimensão do núcleo? (Resp: 2.)

    Show solution
    Pelo teorema posto-nulidade: nulidade =53=2= 5 - 3 = 2.
  14. Ex. 113.14Understanding

    Sistema 4×44 \times 4 com detA=0\det A = 0. Pode ter solução única?

    Select the correct option
    Select an option first
    Show solution
    Se detA=0\det A = 0, então AA é singular, logo kerA{0}\ker A \neq \{0\}. Qualquer solução xpx_p gera infinitas soluções xp+hx_p + h com hkerAh \in \ker A. Solução única é impossível.
  15. Ex. 113.15ApplicationAnswer key

    Resolva (1224)x=(36)\begin{pmatrix} 1 & 2 \\ 2 & 4 \end{pmatrix} x = \begin{pmatrix} 3 \\ 6 \end{pmatrix} e descreva a família de soluções.

    Show solution
    Escalonando: (1200)x=(30)\begin{pmatrix}1&2\\0&0\end{pmatrix}x = \begin{pmatrix}3\\0\end{pmatrix}. Solução particular xp=(3,0)Tx_p = (3,0)^T. Família: x=(3,0)T+t(2,1)Tx = (3,0)^T + t(-2,1)^T, tRt \in \mathbb{R}.
    Show step-by-step (with the why)
    1. Verifique consistência: b=(3,6)Tb = (3,6)^T e (3,6)=3(1,2)(3,6) = 3 \cdot (1,2), que é coluna de AA. Sistema consistente.
    2. Escalone: L2L22L1L_2 \leftarrow L_2 - 2L_1 zera a 2ª linha. Variável livre x2x_2.
    3. Solução particular: x2=0x_2 = 0, x1=3x_1 = 3.
    4. Base do núcleo: (2,1)T(-2, 1)^T. Solução geral: (3,0)T+t(2,1)T(3,0)^T + t(-2,1)^T.

    Macete: solução geral = solução particular + vetor qualquer do núcleo.

  16. Ex. 113.16Understanding

    Para A=(1224)A = \begin{pmatrix} 1 & 2 \\ 2 & 4 \end{pmatrix}, o vetor b=(1,0)Tb = (1, 0)^T está na imagem de AA? Justifique.

    Select the correct option
    Select an option first
    Show solution
    Im(A)=span{(1,2)}\operatorname{Im}(A) = \operatorname{span}\{(1,2)\}. Para (1,0)Im(A)(1,0) \in \operatorname{Im}(A) precisaria de c(1,2)=(1,0)c(1,2) = (1,0), impossível. Logo bIm(A)b \notin \operatorname{Im}(A) — sistema inconsistente.
  17. Ex. 113.17Understanding

    Sistema 5×35 \times 3 com mais equações que incógnitas: tem mais soluções únicas ou soluções infinitas? Discuta os casos.

    Select the correct option
    Select an option first
    Show solution
    Sistema 5×35 \times 3: nulidade =3posto= 3 - \operatorname{posto}. Se posto =3= 3: nulidade =0= 0, solução única (quando existe). Se posto <3< 3: infinitas soluções quando consistente. A existência de solução depende se bIm(A)b \in \operatorname{Im}(A).
  18. Ex. 113.18ProofAnswer key

    Mostre que se Ax=bAx = b tem solução particular xpx_p, então o conjunto completo de soluções é {xp+h:hkerA}\{x_p + h : h \in \ker A\}.

    Show solution
    Seja xpx_p solução particular de Ax=bAx=b. Se xx é qualquer solução: A(xxp)=AxAxp=bb=0A(x - x_p) = Ax - Ax_p = b - b = 0, logo h=xxpkerAh = x - x_p \in \ker A, i.e., x=xp+hx = x_p + h. Reciprocamente, se hkerAh \in \ker A: A(xp+h)=Axp+Ah=b+0=bA(x_p + h) = Ax_p + Ah = b + 0 = b. Logo o conjunto de soluções é exatamente xp+kerAx_p + \ker A.
  19. Ex. 113.19Application

    Em R4\mathbb{R}^4, encontre um vetor vv que não pertence à imagem de A=(11111111)A = \begin{pmatrix} 1 & 1 \\ 1 & 1 \\ 1 & 1 \\ 1 & 1 \end{pmatrix}.

    Show solution
    A matriz tem todas as linhas iguais a (1,1)(1,1), logo Im(A)=span{(1,1,1,1)T}\operatorname{Im}(A) = \operatorname{span}\{(1,1,1,1)^T\}. Qualquer vetor vR4v \in \mathbb{R}^4 com componentes não todas iguais, como v=(1,0,0,0)Tv = (1,0,0,0)^T, não está na imagem.
  20. Ex. 113.20Understanding

    Quando ATAA^T A é invertível?

    Select the correct option
    Select an option first
    Show solution
    ATAA^T A é invertível     ker(ATA)={0}    ker(A)={0}\iff \ker(A^T A) = \{0\} \iff \ker(A) = \{0\} (pois ATAx=0xTATAx=0Ax2=0Ax=0A^T A x = 0 \Rightarrow x^T A^T A x = 0 \Rightarrow \|Ax\|^2 = 0 \Rightarrow Ax = 0). Logo condição: posto =n= n (colunas LI).
  21. Ex. 113.21Proof

    Demonstre: AA quadrada n×nn \times n é invertível     \iff posto(A)=n\operatorname{posto}(A) = n     \iff kerA={0}\ker A = \{0\}.

    Show solution
    (AA invertível \Rightarrow posto =n= n): AA invertível Ax=0\Rightarrow Ax=0 tem solução única x=0x=0 (multiplique por A1A^{-1}), logo kerA={0}\ker A = \{0\}, nulidade =0= 0, posto =n= n. (Posto =nkerA={0}= n \Rightarrow \ker A = \{0\}): posto-nulidade dá nulidade =nn=0= n - n = 0, logo kerA={0}\ker A = \{0\}, logo TT injetiva e sobrejetiva (dim iguais), logo bijetiva, logo AA tem inversa.
  22. Ex. 113.22ApplicationAnswer key

    Mostre que o sistema {x+y=12x+2y=3\begin{cases} x + y = 1 \\ 2x + 2y = 3 \end{cases} não tem solução, verificando que b=(1,3)TIm(A)b = (1,3)^T \notin \operatorname{Im}(A).

    Show solution
    A=(1122)A = \begin{pmatrix}1&1\\2&2\end{pmatrix}, b=(1,3)Tb=(1,3)^T. Im(A)=span{(1,2)}\operatorname{Im}(A) = \operatorname{span}\{(1,2)\}. Para bIm(A)b \in \operatorname{Im}(A) precisaria c(1,2)=(1,3)c(1,2)=(1,3), impossível. Logo bIm(A)b \notin \operatorname{Im}(A) e o sistema é inconsistente.
  23. Ex. 113.23Application

    Para T:R4R3T: \mathbb{R}^4 \to \mathbb{R}^3 com A=(101201211111)A = \begin{pmatrix} 1 & 0 & -1 & 2 \\ 0 & 1 & 2 & -1 \\ 1 & 1 & 1 & 1 \end{pmatrix}, determine posto, nulidade e classifique a injetividade e sobrejetividade de TT.

    Show solution
    Escalonando: pivôs nas colunas 1 e 3. Posto =2= 2. Nulidade =42=2= 4 - 2 = 2. Imagem tem dim 2. TT não é injetiva nem sobrejetiva.
  24. Ex. 113.24Modeling

    Em ML, regressão com 50 features e 5 amostras: XX é 5×505 \times 50. Qual o posto máximo de XX? Discuta a consequência para XTXX^T X e a solução de mínimos quadrados.

    Show solution
    Posto máximo de XX (5×505 \times 50) é min(5,50)=5\min(5,50) = 5. XTXX^T X (50×5050 \times 50) tem posto 5\leq 5 — singular. Multicolinearidade: muitas features correlacionadas causam nulidade alta. Regularização (Ridge, Lasso) ou PCA pré-processam para reduzir o núcleo.
  25. Ex. 113.25Modeling

    Em computação gráfica, a projeção perspectiva R3R2\mathbb{R}^3 \to \mathbb{R}^2 descarta a coordenada de profundidade. Qual é o núcleo? Por que isso está relacionado ao problema de z-fighting?

    Show solution
    Projeção R3R2\mathbb{R}^3 \to \mathbb{R}^2: núcleo é o eixo zz (dim 1). Objetos em profundidades diferentes mapeiam para o mesmo ponto na tela — z-fighting ocorre quando dois objetos têm profundidade muito próxima e o rasterizador não decide qual está na frente.
  26. Ex. 113.26ModelingAnswer key

    Em controle, o sistema x˙=Ax+Bu\dot{x} = Ax + Bu é controlável se e somente se a matriz de controlabilidade C=[B,AB,,An1B]\mathcal{C} = [B, AB, \ldots, A^{n-1}B] tem posto nn. Interprete isso em termos de núcleo e imagem.

    Show solution
    Matriz de controlabilidade C=[B,AB,,An1B]\mathcal{C} = [B, AB, \ldots, A^{n-1}B]: sistema é controlável     posto(C)=n    ker(C)={0}\iff \operatorname{posto}(\mathcal{C}) = n \iff \ker(\mathcal{C}) = \{0\}. Quando posto <n< n: existem estados não alcançáveis a partir da origem. Núcleo de C\mathcal{C} indica as direções não controláveis.
  27. Ex. 113.27Modeling

    Em finanças, portfólio de ativos perfeitamente correlacionados leva a matriz de covariância de posto reduzido. Quais são as consequências práticas para a análise de risco?

    Show solution
    Portfólio com ativos perfeitamente correlacionados: matriz de covariância Σ\Sigma tem colunas linearmente dependentes. Posto <n< n — singular. Risco: a decomposição de risco via Σ\Sigma fica mal-condicionada; o VaR (Value at Risk) depende de direções no núcleo que não têm volatilidade, criando falsa sensação de diversificação.
  28. Ex. 113.28Proof

    Demonstre que autovetores correspondentes a autovalores distintos de T:VVT: V \to V são linearmente independentes. (Pré-visualização de Lição 114.)

    Show solution
    Suponha v1,,vkv_1, \ldots, v_k autovetores de autovalores distintos e dependentes: c1v1++ckvk=0c_1 v_1 + \cdots + c_k v_k = 0. Aplique TT: c1λ1v1++ckλkvk=0c_1 \lambda_1 v_1 + \cdots + c_k \lambda_k v_k = 0. Subtraindo λk\lambda_k vezes a primeira: c1(λ1λk)v1++ck1(λk1λk)vk1=0c_1(\lambda_1 - \lambda_k)v_1 + \cdots + c_{k-1}(\lambda_{k-1}-\lambda_k)v_{k-1} = 0. Por indução, todos ci=0c_i = 0 — contradição.
  29. Ex. 113.29Proof

    Demonstre: posto(A)=posto(AT)\operatorname{posto}(A) = \operatorname{posto}(A^T).

    Show solution
    posto(A)=posto(AT)\operatorname{posto}(A) = \operatorname{posto}(A^T): operações elementares de linha não alteram o espaço-linha; transposta troca espaço-linha por espaço-coluna. Formalmente: A=UΣVTA = U\Sigma V^T (SVD) — o posto é o número de singulares não-nulos, invariante por transposição (AT=VΣUTA^T = V\Sigma U^T).
  30. Ex. 113.30Challenge

    Construa uma matriz AA de tamanho 3×33 \times 3 com posto exatamente 2 e um vetor bb tal que Ax=bAx = b tenha infinitas soluções.

    Show solution
    Tome A=(100010110)A = \begin{pmatrix}1&0&0\\0&1&0\\1&1&0\end{pmatrix}: as colunas 1 e 2 formam base de Im(A)\operatorname{Im}(A) (dim 2), coluna 3 está no span das demais. Escolha b=(1,2,3)Tb = (1,2,3)^T. Sistema Ax=bAx=b: x1=1x_1 = 1, x2=2x_2 = 2, x3x_3 livre. Infinitas soluções pois nulidade =1= 1.
  31. Ex. 113.31Proof

    Demonstre que kerT\ker T é um subespaço do domínio VV.

    Show solution
    Se u,vkerTu, v \in \ker T e α,βK\alpha, \beta \in K: T(αu+βv)=αT(u)+βT(v)=α0+β0=0T(\alpha u + \beta v) = \alpha T(u) + \beta T(v) = \alpha \cdot 0 + \beta \cdot 0 = 0. Logo αu+βvkerT\alpha u + \beta v \in \ker T. Fechamento + 0kerT0 \in \ker T (pois T(0)=0T(0) = 0) provam subespaço.
  32. Ex. 113.32Proof

    Demonstre que Im(T)\operatorname{Im}(T) é um subespaço do contradomínio WW.

    Show solution
    Se w1,w2Im(T)w_1, w_2 \in \operatorname{Im}(T), existem v1,v2Vv_1, v_2 \in V com T(vi)=wiT(v_i) = w_i. Então αw1+βw2=αT(v1)+βT(v2)=T(αv1+βv2)Im(T)\alpha w_1 + \beta w_2 = \alpha T(v_1) + \beta T(v_2) = T(\alpha v_1 + \beta v_2) \in \operatorname{Im}(T). Logo Im(T)\operatorname{Im}(T) é fechado sob combinações lineares; 0Im(T)0 \in \operatorname{Im}(T) pois T(0)=0T(0) = 0.
  33. Ex. 113.33Proof

    Mostre que posto(AB)min(posto(A),posto(B))\operatorname{posto}(AB) \leq \min(\operatorname{posto}(A), \operatorname{posto}(B)).

    Show solution
    posto(AB)posto(A)\operatorname{posto}(AB) \leq \operatorname{posto}(A): Im(AB)={ABx}=A({Bx})=A(Im(B))Im(A)\operatorname{Im}(AB) = \{ABx\} = A(\{Bx\}) = A(\operatorname{Im}(B)) \subseteq \operatorname{Im}(A). Logo dimIm(AB)dimIm(A)\dim \operatorname{Im}(AB) \leq \dim \operatorname{Im}(A). Analogamente posto(AB)posto(B)\operatorname{posto}(AB) \leq \operatorname{posto}(B) via espaço-linha.
  34. Ex. 113.34Proof

    Demonstre: Col(A)ker(AT)\operatorname{Col}(A) \perp \ker(A^T).

    Show solution
    Col(A)ker(AT)\operatorname{Col}(A) \perp \ker(A^T): tome yCol(A)y \in \operatorname{Col}(A) (i.e., y=Axy = Ax) e zker(AT)z \in \ker(A^T) (i.e., ATz=0A^T z = 0). Então y,z=yTz=(Ax)Tz=xTATz=xT0=0\langle y, z \rangle = y^T z = (Ax)^T z = x^T A^T z = x^T \cdot 0 = 0. Logo yzy \perp z.

Fontes desta aula

  • A First Course in Linear Algebra — Robert A. Beezer · 3ª ed. · EN · GNU FDL · §ILT, §KER, §RNG, §SLT, §RNNM, §NME. Fonte primária dos exercícios.
  • Linear Algebra — Jim Hefferon · 4ª ed. · EN · CC-BY-SA · cap. 3, §II. Fonte dos exemplos resolvidos e exercícios de modelagem.
  • Linear Algebra Done Right — Sheldon Axler · 4ª ed. · EN · CC-BY-NC · §3D. Perspectiva abstrata sem determinantes.

Updated on 2026-05-06 · Author(s): Clube da Matemática

Found an error? Open an issue on GitHub or submit a PR — open source forever.