Decomposição funcional
Na matemática, decomposição funcional é o processo de resolução de uma relação funcional em suas partes constituintes de tal forma que a função original possa ser reconstruída (ou seja, recomposta) a partir dessas partes pela composição da função.
Esse processo de decomposição pode ser realizado para obter informações sobre a identidade dos componentes constituintes que podem refletir processos físicos individuais de interesse. Além disso, a decomposição funcional pode resultar em uma representação comprimida da função global, uma tarefa que só é viável quando os processos constituintes possuem um certo nível de modularidade (ou seja, independência ou não interação).
Interações entre os componentes são essenciais para o funcionamento da coleção. Todas as interações podem não ser observáveis, mas possivelmente deduzido por percepção, síntese, validação e verificação do comportamento composto.
Definição matemática básica
Para uma função multivariada Sim.= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =f(x1,x2,...... ,xn)(x_{1},x_{2},dotsx_{n})}, decomposição funcional geralmente refere-se a um processo de identificação de um conjunto de funções (g1,g2,...... gm?{displaystyle {g_{1},g_{2},dots g_{m}}} tal que
- f(x1,x2,...... ,xn)= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =φ φ (g1(x1,x2,...... ,xn),g2(x1,x2,...... ,xn),...... gm(x1,x2,...... ,xn)){displaystyle f(x_{1},x_{2},dotsx_{n})=phi (g_{1}(x_{1},x_{2},dotsx_{n}),g_{2}(x_{1},x_{2},dotsx_{n}),dots g_{m}(x_{1},x_{2},dots)
Onde? φ φ - Sim. é outra função. Assim, diríamos que a função fNão. é decomposto em funções (g1,g2,...... gm?{displaystyle {g_{1},g_{2},dots g_{m}}}. Este processo é intrinsecamente hierárquico no sentido de que podemos (e muitas vezes fazer) procurar decompor ainda mais as funções gEu...{displaystyle g_{i}} em uma coleção de funções constituintes (h1,h2,...... hp?Não. {h_{1},h_{2},dots h_{p}}} tal que
- gEu...(x1,x2,...... ,xn)= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =γ γ (h1(x1,x2,...... ,xn),h2(x1,x2,...... ,xn),...... hp(x1,x2,...... ,xn)){displaystyle g_{i}(x_{1},x_{2},dotsx_{n})=gamma (h_{1}(x_{1},x_{2},dotsx_{n}),h_{2}(x_{1},x_{2},dotsx_{n}),dots h_{p}(x_{1},x_{n}
Onde? γ γ - Sim. é outra função. Decomposições deste tipo são interessantes e importantes para uma grande variedade de razões. Em geral, as decomposições funcionais valem a pena quando há uma certa "sparseness" na estrutura de dependência; isto é, quando as funções constituintes são consideradas depender de conjuntos aproximadamente disjuntos de variáveis. Assim, por exemplo, se conseguirmos obter uma decomposição de x1= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =f(x2,x3,...... ,x6){displaystyle x_{1}=f(x_{2},x_{3},dotsx_{6})} em uma composição hierárquica de funções (g1,g2,g3?Não. {g_{1},g_{2},g_{3}}} tal que x1= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =g1(x2)(x_{2})}, x2= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =g2(x3,x4,x5)(x_{3},x_{4},x_{5})}, x5= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =g3(x6)(x_{6})}, como mostrado na figura à direita, isso provavelmente seria considerado uma decomposição altamente valiosa.
Exemplo: Aritmética
Um exemplo básico de decomposição funcional está expressando as quatro operações aritméticas binárias de adição, subtração, multiplicação e divisão em termos das duas operações binárias de adição um+b)Não. a+b. e multiplicação um× × b),{displaystyle atimes b,} e as duas operações unárias de inversão aditiva - Sim. - Sim. umNão. - A e inversão multiplicativa 1/um.Não. A subtração pode então ser realizada como a composição da adição e inversão aditiva, um- Sim. - Sim. b)= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =um+(- Sim. - Sim. b)),(b) e a divisão pode ser realizada como a composição da multiplicação e inverso multiplicativo, um÷ ÷ b)= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =um× × (1/b)).(1/b).} Isso simplifica a análise de subtração e divisão, e também torna mais fácil axiomatizar essas operações na noção de um campo, pois existem apenas duas operações binárias e duas operações unárias, em vez de quatro operações binárias.
Estendendo essas operações primitivas, existe uma rica literatura sobre o tópico de decomposição polinomial.
Exemplo: Decomposição de funções contínuas
Motivação para decomposição
Como Porquê? a decomposição é valiosa, a razão é dupla. Em primeiro lugar, a decomposição de uma função em componentes não interagindo geralmente permite representações mais econômicas da função. Por exemplo, em um conjunto de variáveis quaternárias (isto é, 4-árias), representando a função completa x1= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =f(x2,x3,...... ,x6){displaystyle x_{1}=f(x_{2},x_{3},dotsx_{6})} requer armazenamento 45= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =1024{displaystyle 4^{5}=1024} valores, o valor da função para cada elemento no produto cartesiano (x2,x3,...... ,x6?{displaystyle {x_{2},x_{3},dotsx_{6}}}, isto é, cada uma das 1024 possíveis combinações para (x2,x3,...... ,x6?{displaystyle {x_{2},x_{3},dotsx_{6}}}. No entanto, se a decomposição entrar (g1,g2,g3?Não. {g_{1},g_{2},g_{3}}} dado acima é possível, então g1= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =g1(x2)Não. g_{1}=g_{1}(x_{2})} requer armazenamento de 4 valores, g2= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =g2(x3,x4,x5)Não. g_{2}=g_{2}(x_{3},x_{4},x_{5})} requer armazenamento 43= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =64- Sim. valores, e g3= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =g3(x6)Não. g_{3}=g_{3}(x_{6})} novamente requer armazenar apenas 4 valores. Então, em virtude da decomposição, precisamos apenas de loja 4+64+4= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =72Não. 4+64+4=72 valores em vez de 1024 valores, uma economia dramática.
Intuitivamente, essa redução no tamanho da representação é alcançada simplesmente porque cada variável depende apenas de um subconjunto das outras variáveis. Assim, variável x1Não. x_{1}} somente depende diretamente da variável x2{displaystyle x_{2}}, em vez de depender do conjunto completo de variáveis. Diríamos que essa variável x2{displaystyle x_{2}} telas desligadas variável x1Não. x_{1}} do resto do mundo. Exemplos práticos deste fenômeno nos cercam, como discutido nas "Considerações Filosóficas" abaixo, mas vamos apenas considerar o caso particular de "tráfego no norte da estrada oeste". Vamos assumir esta variável (x1Não. {x_{1}}}) assume três valores possíveis de {"moving slow", "moving deadly slow", "not moving at all"}. Agora vamos dizer variável x1Não. {x_{1}}} depende de duas outras variáveis, "reze" com valores de {"sun", "rain", "snow"} e "GW Bridge traffic" com valores {"10mph", "5mph", "1mph"}. O ponto aqui é que, embora existam certamente muitas variáveis secundárias que afetam a variável clima (por exemplo, o sistema de baixa pressão sobre o Canadá, o floco de borboletas no Japão, etc.) e a variável tráfego Bridge (por exemplo, um acidente no I-95, motorcade presidencial, etc.) todas essas outras variáveis secundárias não são diretamente relevantes para o tráfego West Side Highway. Tudo o que precisamos (hipoteticamente) para prever o tráfego West Side Highway é o tempo e o tráfego da Ponte GW, porque essas duas variáveis tela fora tráfego West Side Highway de todas as outras influências potenciais. Ou seja, todas as outras influências agem através de eles.
Fora de considerações puramente matemáticas, talvez o maior valor da decomposição funcional é o insight que fornece na estrutura do mundo. Quando uma decomposição funcional pode ser alcançada, isso fornece informações ontológicas sobre o que as estruturas realmente existem no mundo, e como elas podem ser previstas e manipuladas. Por exemplo, na ilustração acima, se for aprendido que x1Não. {x_{1}}} depende diretamente apenas de x2Não. {x_{2}}}, isto significa que para fins de previsão de x1Não. {x_{1}}}É suficiente saber apenas x2Não. {x_{2}}}. Além disso, intervenções para influenciar x1Não. {x_{1}}} pode ser tomado diretamente em x2Não. {x_{2}}}, e nada adicional pode ser ganho intervindo em variáveis (x3,x4,x5?Não. {x_{3},x_{4},x_{5}}}, uma vez que estes apenas agem x2Não. {x_{2}}} em qualquer caso.
Considerações filosóficas
Os antecedentes filosóficos e as ramificações da decomposição funcional são bastante amplos, pois a decomposição funcional de uma forma ou de outra está subjacente a toda a ciência moderna. Aqui revisamos apenas algumas dessas considerações filosóficas.
Tradição reducionista
Uma das principais distinções frequentemente traçadas entre a filosofia oriental e a filosofia ocidental é que os filósofos orientais tendiam a defender ideias favoráveis ao holismo, enquanto os pensadores ocidentais tendiam a defender ideias favoráveis ao reducionismo. Essa distinção entre Oriente e Ocidente é semelhante a outras distinções filosóficas (como realismo versus antirrealismo). Alguns exemplos do espírito holístico oriental:
- "Abra sua boca, aumente suas atividades, comece a fazer distinções entre as coisas, e você vai trabalhar para sempre sem esperança." — O Tao Te Ching de Lao Tzu (Brian Browne Walker, tradutor)
- "É um trabalho difícil para [pessoas] ver o significado do fato de que tudo, incluindo a nós mesmos, depende de tudo o resto e não tem auto-existência permanente." — Majjhima Nikaya (Anne Bankroft, tradutor)
- "Um nome é imposto sobre o que se pensa ser uma coisa ou um estado e isso o divide de outras coisas e outros estados. Mas quando você busca o que está por trás do nome, você encontra uma sutileza maior e maior que não tem divisões..." — Visuddhi Magga (Anne Bankroft, tradutor)
A tradição ocidental, desde suas origens entre os filósofos gregos, preferia uma posição em que desenhar distinções, divisões e contrastes corretos era considerado o auge do insight. Na visão de mundo aristotélica/porfírica, ser capaz de distinguir (via prova estrita) quais qualidades de uma coisa representam sua essência versus propriedade versus acidente versus definição e, em virtude dessa descrição formal, segregar essa entidade em seu devido lugar na taxonomia da natureza — isso era atingir o ápice da sabedoria.
Características de hierarquia e modularidade
Em sistemas naturais ou artificiais que exigem que os componentes sejam integrados de alguma forma, mas onde o número de componentes excede o que poderia razoavelmente ser totalmente interconectado (devido ao crescimento quadrado no número de conexões (= n sobre dois ou = n * (n - 1) / 2)), muitas vezes descobre-se que algum grau de hierarquia deve ser empregado na solução. As vantagens gerais de sistemas hierárquicos esparsos sobre sistemas densamente conectados – e estimativas quantitativas dessas vantagens – são apresentadas por Resnikoff (1989). Em termos prosaicos, uma hierarquia é "uma coleção de elementos que se combinam legalmente em totalidades complexas cujas propriedades dependem das de suas partes constituintes" e onde a novidade é "fundamentalmente combinatória, iterativa e transparente" (McGinn 1994).
Uma noção importante que sempre surge em conexão com as hierarquias é a modularidade, que está efetivamente implícita na escassez de conexões em topologias hierárquicas. Em sistemas físicos, um módulo é geralmente um conjunto de componentes interativos que se relacionam com o mundo externo por meio de uma interface muito limitada, ocultando assim a maioria dos aspectos de sua estrutura interna. Como resultado, as modificações feitas no interior de um módulo (para melhorar a eficiência, por exemplo) não criam necessariamente um efeito cascata no resto do sistema (Fodor 1983). Esse recurso torna o uso eficaz da modularidade uma peça central de toda boa engenharia de software e hardware.
Inevitabilidade da hierarquia e modularidade
Existem muitos argumentos convincentes sobre a prevalência e a necessidade de hierarquia/modularidade na natureza (Koestler 1973). Simon (1996) aponta que, entre os sistemas em evolução, apenas aqueles que conseguem obter e reutilizar subconjuntos estáveis (módulos) provavelmente serão capazes de pesquisar no cenário de aptidão com um ritmo razoavelmente rápido; assim, Simon afirma que "entre as possíveis formas complexas, as hierarquias são as que têm tempo para evoluir." Essa linha de pensamento levou à afirmação ainda mais forte de que, embora "não saibamos quais formas de vida evoluíram em outros planetas do universo, podemos assumir com segurança que" onde quer que haja vida, deve ser organizado hierarquicamente'" (Koestler 1967). Este seria um estado de coisas feliz, uma vez que a existência de subsistemas simples e isoláveis é considerada uma pré-condição para uma ciência bem-sucedida (Fodor 1983). De qualquer forma, a experiência certamente parece indicar que grande parte do mundo possui estrutura hierárquica.
Tem sido proposto que a própria percepção é um processo de decomposição hierárquica (Leyton 1992), e que fenômenos que não são essencialmente hierárquicos por natureza podem nem mesmo ser "teoricamente inteligíveis" para a mente humana (McGinn 1994, Simon 1996). Nas palavras de Simon,
O fato de que muitos sistemas complexos têm uma estrutura hierárquica quase decomponível é um fator facilitador que nos permite entender, descrever e até mesmo "ver" tais sistemas e suas partes. Ou talvez a proposição deve ser colocada no outro caminho. Se houver sistemas importantes no mundo que são complexos sem serem hierárquicos, eles podem, em grande medida, escapar da nossa observação e compreensão. A análise de seu comportamento envolveria conhecimentos e cálculos detalhados das interações de suas partes elementares que estariam além de nossas capacidades de memória ou computação.
Aplicativos
Aplicações práticas de decomposição funcional são encontradas em redes bayesianas, modelagem de equações estruturais, sistemas lineares e sistemas de banco de dados.
Representação do conhecimento
Processos relacionados à decomposição funcional são predominantes nos campos de representação do conhecimento e aprendizado de máquina. Técnicas de indução de modelo hierárquico, como minimização de circuito lógico, árvores de decisão, inferência gramatical, agrupamento hierárquico e decomposição de quadtree são exemplos de decomposição de função. Uma revisão de outras aplicações e decomposição de função pode ser encontrada em Zupan et al. (1997), que também apresenta métodos baseados na teoria da informação e na teoria dos grafos.
Muitos métodos de inferência estatística podem ser pensados como implementando um processo de decomposição de função na presença de ruído; isto é, onde se espera que as dependências funcionais sejam mantidas apenas aproximadamente. Entre tais modelos estão os modelos de mistura e os métodos recentemente populares referidos como "decomposições causais" ou redes bayesianas.
Teoria do banco de dados
Consulte a normalização do banco de dados.
Aprendizado de máquina
Em aplicações científicas práticas, quase nunca é possível alcançar uma decomposição funcional perfeita devido à incrível complexidade dos sistemas em estudo. Essa complexidade se manifesta na presença de "ruído" que é apenas uma designação para todas as influências indesejadas e não rastreáveis em nossas observações.
No entanto, embora a decomposição funcional perfeita seja geralmente impossível, o espírito vive em um grande número de métodos estatísticos que são equipados para lidar com sistemas ruidosos. Quando um sistema natural ou artificial é intrinsecamente hierárquico, a distribuição conjunta das variáveis do sistema deve fornecer evidências dessa estrutura hierárquica. A tarefa de um observador que busca entender o sistema é então inferir a estrutura hierárquica a partir da observação dessas variáveis. Esta é a noção por trás da decomposição hierárquica de uma distribuição conjunta, a tentativa de recuperar algo da estrutura hierárquica intrínseca que gerou essa distribuição conjunta.
Como exemplo, os métodos de rede bayesiana tentam decompor uma distribuição conjunta ao longo de suas linhas de falha causais, "cortando a natureza em suas costuras". A motivação essencial por trás desses métodos é novamente que dentro da maioria dos sistemas (naturais ou artificiais), relativamente poucos componentes/eventos interagem uns com os outros diretamente em pé de igualdade (Simon 1963). Em vez disso, observam-se bolsões de conexões densas (interações diretas) entre pequenos subconjuntos de componentes, mas apenas conexões soltas entre esses subconjuntos densamente conectados. Há, portanto, uma noção de "proximidade causal" em sistemas físicos sob os quais as variáveis precipitam naturalmente em pequenos aglomerados. Identificar esses clusters e usá-los para representar a junta fornece a base para grande eficiência de armazenamento (em relação à distribuição completa da junta), bem como para algoritmos de inferência potentes.
Arquitetura de software
A Decomposição Funcional é um método de design que pretende produzir uma descrição arquitetônica sem implementação de um programa de computador. Ao invés de conjeturar Objetos e adicionar métodos a eles (OOP), com cada Objeto pretendendo capturar algum serviço do programa, o arquiteto de software primeiro estabelece uma série de funções e tipos que cumprem o principal problema de processamento do programa de computador, decompõe cada um em revelar funções e tipos comuns e, finalmente, derivar Módulos desta atividade.
Por exemplo, o design do editor Emacs pode ser inicialmente pensado em termos de funções:
e)) estado do editor Emacs e sistema operacional em execução{displaystyle e,equiv {text{state of the Emacs editor and running operating system}}}
e?)) ecom algum componente/parte de seu estado alterado{displaystyle e',equiv e{text{ com algum componente/parte de seu estado alterado}}}
f:(e,Eu...Eu...SpexpReSSEu...on)→ → e?{displaystyle f:(e,lisp,,expressão)rightarrow e'}
E uma possível decomposição da função de f:
fRomExpR:Eu...Eu...SpexpReSSEu...on→ → (ob)JJec),se o sucessoeRRoR,se falhar{displaystyle deExpr:lisp,,expressionrightarrow {begin{cases}object,&{text{if success}}\error,&{text{if fail}}end{cases}}}
evumEu...uum)e:(ob)JJec),e)→ → e?{displaystyle avaliado:(object,e)rightarrow e'}
pREu...n):(eRRoR,e)→ → e?{displaystyle print:(error,e)rightarrow e'}
Isso leva ao Módulo, Serviço ou Objeto plausível de um interpretador (contendo a função fromExpr). A Decomposição de Função indiscutivelmente produz insights sobre a reutilização, como se durante o curso da análise, duas funções produzirem o mesmo tipo, é provável que uma função comum/preocupação transversal resida em ambas. Em contraste, em OOP, é uma prática comum conjeturar Módulos antes de considerar tal decomposição. Isso indiscutivelmente resulta em refatoração dispendiosa posteriormente. O FD mitiga esse risco até certo ponto. Além disso, sem dúvida, o que separa o FD de outros métodos de design é que ele fornece um meio conciso de alto nível do discurso arquitetônico de ponta a ponta, revelando falhas nos requisitos anteriores e expondo de forma benéfica mais decisões de design com antecedência. E, por último, FD é conhecido por priorizar o desenvolvimento. Indiscutivelmente, se o FD estiver correto, as partes do programa mais reutilizáveis e com custo determinado são identificadas muito antes no ciclo de desenvolvimento.
Processamento de sinal
A decomposição funcional é usada na análise de muitos sistemas de processamento de sinais, como sistemas LTI. O sinal de entrada para um sistema LTI pode ser expresso como uma função, f())(T)}. Então... f())(T)} pode ser decomposto em uma combinação linear de outras funções, chamados sinais de componente:
- f())= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =um1)) g1())+um2)) g2())+um3)) g3())+⋯ ⋯ +umn)) gn()){displaystyle f(t)=a_{1}cdot g_{1}(t)+a_{2}cdot g_{2}(t)+a_{3}cdot g_{3}(t)+dots +a_{n}cdot g_{n}(t)}
Toma. (g1()),g2()),g3()),...... ,gn())?{displaystyle {g_{1}(t),g_{2}(t),g_{3}(t),dotsg_{n}(t)}} são os sinais de componente. Note que (um1,um2,um3,...... ,umn?Não. {a_{1},a_{2},a_{3},dotsa_{n}}} são constantes. Esta decomposição ajuda em análise, porque agora a saída do sistema pode ser expressa em termos dos componentes da entrada. Se deixarmos T(?Não. T{}} representar o efeito do sistema, então o sinal de saída é T(f())?{displaystyle T{f(t)}}, que pode ser expresso como:
- T(f())?= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =T(um1)) g1())+um2)) g2())+um3)) g3())+⋯ ⋯ +umn)) gn())?{displaystyle T{f(t)}=T{a_{1}cdot g_{1}(t)+a_{2}cdot g_{2}(t)+a_{3}cdot g_{3}(t)+dots +a_{n}cdot g_{n}(t)}}
- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =um1)) T(g1())?+um2)) T(g2())?+um3)) T(g3())?+⋯ ⋯ +umn)) T(gn())?Não. =a_{1}cdot T{g_{1}(t)}+a_{2}cdot T{g_{2}(t)}+a_{3}cdot T{g_{3}(t)}+dots +a_{n}cdot T{g_{n}(t)}}
Em outras palavras, o sistema pode ser visto como agindo separadamente em cada um dos componentes do sinal de entrada. Exemplos comumente usados desse tipo de decomposição são a série de Fourier e a transformada de Fourier.
Engenharia de sistemas
A decomposição funcional na engenharia de sistemas refere-se ao processo de definição de um sistema em termos funcionais e, em seguida, definição de funções de nível inferior e relações de sequenciamento dessas funções de sistemas de nível superior. A ideia básica é tentar dividir um sistema de forma que cada bloco de um diagrama de blocos possa ser descrito sem um "e" ou "ou" na descrição.
Este exercício força cada parte do sistema a ter uma função pura. Quando um sistema é projetado como funções puras, elas podem ser reutilizadas ou substituídas. Um efeito colateral comum é que as interfaces entre os blocos se tornam simples e genéricas. Como as interfaces geralmente se tornam simples, é mais fácil substituir uma função pura por uma função semelhante relacionada.
Por exemplo, digamos que é preciso fazer um sistema estéreo. Pode-se decompor funcionalmente isso em alto-falantes, amplificador, toca-fitas e painel frontal. Mais tarde, quando um modelo diferente precisar de um CD de áudio, ele provavelmente poderá se adequar às mesmas interfaces.
Contenido relacionado
Compactação (matemática)
Combinatória
Probabilidade bayesiana