• Nenhum resultado encontrado

em que na slot id guardamos o identificador do colecionador, cromos terá a lista de cromos todos desse coleccionador.

N/A
N/A
Protected

Academic year: 2021

Share "em que na slot id guardamos o identificador do colecionador, cromos terá a lista de cromos todos desse coleccionador."

Copied!
14
0
0

Texto

(1)

Engenharia do Conhecimento 1º Exame 14 de Junho de 2016 Duração: 2h 30m Exercício I

Outra vez os cromos. Suponha que temos vários colecionadores de cromos, e

que os cromos que cada um dos coleccionadores possui está representado numa lista em que cada coleccionador é descrito por factos do tipo

(deftemplate cromista (slot id)

(multislot cromos))

em que na slot id guardamos o identificador do colecionador, cromos terá a lista de cromos todos desse coleccionador.

Assumamos que existe um facto que indica quantos cromos existem, sendo os cromos representados por inteiros positivos e existe um conjunto de factos com a informação dos cromos de cada um dos jogadores.

;; neste caso há 8 cromos (deffacts setup

(num-cromos 8)) ;; temos 3 jogadores

(deffacts cromistas

(cromista (id titi) (temCromos 1 3 5 7 8 7 6)) (cromista (id gugu) (temCromos 2 7 8 6)) (cromista (id lulu) (temCromos 1 3 6 8 6 6 4))

(2)

Sem definir novas funções nem redefinir a estrutura de dados dos jogadores,

a) Escreva uma regra Jess que detecte que não há ninguém com cromos repetidos.

(defrule todosSemRepetidos

(not (cromista (temCromos $? ?c $? ?c $?)) =>

(printout t “Todos sem repetidos!” crlf)

b) Escreva um programa em Jess que permita detectar os pares de jogadores que não podem fazer trocas de cromos. Uma troca só pode ocorrer se cada um dos dois jogadores tiver um cromo repetido que faz falta ao outro.

;; assert de todos os pares de jogadores (possibilidades de troca)

(defrule par-que-nao-troca (jog (id ?x))

(jog (id ?y&:(> ?y ?x)) =>

(assert (tenta-trocar ?x ?y)))

;;; os cromistas ?x e ?y podem trocar ?rep-x com ?rep-y (defrule pode-trocar

?out <- (tenta-trocar ?x ?y)

(jog (id ?x) (cromista (temCromos $?esq-x ?rep-x $?meio-x ?rep-x $?dir-x)) (jog (id ?y) (cromista (temCromos $?esq-y ?rep-y $?meio-y ?rep-y $?dir-y)) (test (not (member$ ?rep-x (create$ $?esq-y $?meio-y ?rep-y $?dir-y)))) (test (not (member$ ?rep-y (create$ $?esq-x $?meio-x ?rep-x $?dir-x)))) =>

(retract ?out))

;; se nao puderam trocar entao anuncia ;; esta regra só dispara para

(defrule nao-pode-trocar (declare (salience -10)) out <- (tenta-trocar ?x ?y) =>

(retract ?out)

(3)

Exercício II

Modelize em OWL 2.0 o conhecimento expresso nas frases seguintes, recorrendo às regras SWRL apenas se for impossível a modelização sem elas, e sem nenhuma preocupação com a existência de informação contraditória nem com uma eventual solução do puzzle. Note que uma casa pode estar à esquerda da outra sem estar imediatamente à esquerda. Pode pensar que a esquerda e direita são referentes a um observador que olha para a fileira de casas.

a) Há 5 casas, a Amarela, a Verde, a Marfim, a Vermelha e a Azul. Todos os que habitam as casas são animais.

% Casa é uma classe só formada pelos 5 indivíduos referidos. % As Casas não são animais. O texto não diz mas nós sabemos. Class: :Casa

EquivalentTo: {:Amarela , :Azul , :Marfim , :Verde , :Vermelha} DisjointWith: :Animal

% os individuals da classe Casa Individual: :Azul Types: :Casa Individual: :Marfim Types: :Casa Individual: :Vermelha Types: :Casa Individual: :Amarela Types: :Casa Individual: :Verde Types: :Casa

% o texto não diz explicitamente mas as casas devem ser todas % diferentes

DifferentIndividuals: :Amarela, :Azul, :Marfim, :Verde, :Vermelha % Há a classe dos animais e estes são diferentes das casas sempre Class: :Animal

DisjointWith: :Casa

% todos os que habitam as casas são animais. Existe uma propriedade habita que vai de Animal para Casa.

ObjectProperty: :habita Domain: :Animal Range: :Casa

b) Há 5 animais (Cão, Caracol, Zebra, Raposa e o Cavalo).

% acrescentamos que a classe Animal só tem os 5 referidos no texto. lass: :Animal

(4)

% Eis os 5 Individuals da classe Animal Individual: :Raposa Types: :Animal Individual: :Cao Types: :Animal Individual: :Cavalo Types: :Animal Individual: :Caracol Types: :Animal Individual: :Zebra Types: :Animal

% Sabemos que os animais são todos diferentes. Não é dito mas sabemos. DifferentIndividuals: :Cao, :Caracol, :Cavalo, :Raposa, :Zebra

c) Cada um deles habita numa das casas e cada uma das casas é só habitada por um dos animais.

% A propriedade :habita é funcional porque cada animal só habita uma % casa e é inversamente funcional porque cada casa é só habitada por % um único animal. ObjectProperty: :habita Characteristics: Functional, InverseFunctional

d) O Caracol habita na Verde ou na Marfim.

% O :Caracol pertence à classe dos que habitam a classe enumerada % formada pelo :Marfim e :Verde.

Individual: :Caracol

Types: :habita some ({:Marfim , :Verde}),

e) Cada casa pode ter uma casa imediatamente à esquerda ou imediatamente à direita, mas a casa imediatamente à direita não pode ser também a casa imediatamente à esquerda. As casas não estão imediatamente ao lado de si próprias, nem à direita nem à esquerda.

% Precisamos de duas propriedades disjuntas que exprimam a relação % casa imediatamente ao lado esquerdo e direito de uma casa. Ambas as % propriedades terão de ser funcionais e inversamente funcionais

% porque cada casa só pode ter uma casa imediatamente à esquerda e uma % casa só pode ser a imeditamente à esquerda de uma única e não

% de mais. As casas não podem estar imediatamente à esquerda ou à % direita de si próprias, (irreflexividade) e as duas propriedades % terão de ser assimétricas: Se X está imeditamente à esquerda de Y % então Y não está imeditamente à esquerda de X e o mesmo para o caso % da relação para a direita.

% Ambas as propriedades serão sub-propriedades de :temAoLado.

(5)

ObjectProperty: :temDirectEsquerda Domain: :Casa Range: :Casa Characteristics: Functional, InverseFunctional, Irreflexive, Assymetric SubPropertyOf: :temAoLado, DisjointWith: :temDirectDireita ObjectProperty: :temDirectDireita Domain: :Casa Range: :Casa Characteristics: Functional, InverseFunctional, Irreflexive, Assymetric SubPropertyOf: :temAoLado, DisjointWith: :temDirectEsquerda

% A propriedade temAoLado que é super-propriedade das outras duas. % Tem de ser simétrica mas irreflexiva.

ObjectProperty: :temAoLado Domain: :Casa Range: :Casa Characteristics: Symmetric, Irreflexive

f) A Zebra habita numa casa que está imediatamente ao lado da casa onde habita o Caracol.

Individual: :Zebra

Types: :habita some

(:temAoLado some ( inverse (:habita) value :Caracol))

g) A casa do meio tem duas casas à esquerda e duas casas à direita.

% Vamos precisar de duas novas propriedades de :Casa para :Casa % :temNaDireita e :temNaEsquerda. Estas são super-propriedades % respectivamente das duas propriedades de respectivamente % :temDirectDireita e :temDirectEsquerda. São ambas transitivas. ObjectProperty: :temNaDireita Domain: :Casa Range: :Casa Characteristics: Transitive ObjectProperty: :temNaEsquerda Domain: :Casa Range: :Casa Characteristics: Transitive

(6)

ObjectProperty: :temDirectEsquerda SubPropertyOf: :temNaEsquerda, ObjectProperty: :temDirectDireita SubPropertyOf: :temNaDireita,

% Criamos um novo indivíduo da classe Casa, a :CasaMeio

% que tem 2 casas à esquerda e duas à direita, usando restrições % de cardinalidade sobre as propriedades recentemente criadas. Individual: :CasaMeio

Types: :temNaDireita exactly 2 :Casa, :Casa,

:temNaEsquerda exactly 2 :Casa

h) A Raposa habita na casa mais à esquerda, uma das casas das pontas (que só têm uma casa ao lado) que não é a casa do meio, e que não tem casas à esquerda e que tem 4 casas à direita.

% Precisamos de acrescentar um facto à :Raposa. Individual: :Raposa

Facts:

:habita :CasaMaisAEsquerda

% Criamos mais uma casa: a casa mais à esquerda que é diferente da % casa do meio, 1ue é instância de uma nova classe :CasaPonta. % E tem 4 casas ao lado e que não tem casas à esquerda

Individual: :CasaMaisAEsquerda Types:

:CasaPonta,

:temNaDireita exactly 4 :Casa, :temNaEsquerda exactly 0 :Casa DifferentFrom: :CasaMeio

% A Casa da Ponta tem de ter ao lado apenas uma casa. Class: :CasaPonta

EquivalentTo: :temAoLado exactly 1 :Casa SubClassOf: :Casa

i) O vizinho de um animal habita na casa imediatamente ao lado da sua.

% A propriedade de vizinho entre animais tem de ser desenhada través % de uma cadeia de propriedades, para não usarmos regras.

ObjectProperty: :vizinhoDe Domain: :Animal

Range: :Animal

SubPropertyChain: :habita o :temAoLado o inverse(:habita)

j) A casa habitada pelo Cavalo é imediatamente ao lado de uma casa que só tem uma casa ao lado.

Individual: :Cavalo

Types: :habita some

(7)

Exercício III

1. Considere o JTMS expresso na tabela seguinte.

Etiqueta N1 N2 (SL (N3) (N1)) N3 (SL () ()) N4 (SL (N1) ()) (SL (N2) ()) N5 (SL () ()) (SL (N7) ()) N6 (SL (N5) ()) (SL () (N2)) N7 (SL (N6) ()) N8 (SL () (N7)) N9 (SL (N8) ()) N10 (SL (N9) ())

a) Determine o estatuto de cada um dos nós. Assinale para cada nó o conjunto de nós de suporte.

A sublinhado temos os nós de suporte.

Estatuto Etiqueta N1 Out N2 In (SL (N3) (N1)) N3 In (SL () ()) N4 In (SL (N1) ()) (SL (N2) ()) N5 In (SL () ()) (SL (N7) ()) N6 In (SL (N5) ()) (SL () (N2)) N7 In (SL (N6) ()) N8 Out (SL () (N7)) N9 Out (SL (N8) ()) N10 Out (SL (N9) ())

N1 está a Out porque não tem justificações.

N3 fica a In com a justificação válida (SL () ()) como suporte. N2 fica a In com a sua única justificação como suporte.

N4 fica a In com a justificação (SL (N2) ()) como suporte, que é a sua única justificação válida.

N5 fica a In devido a (SL () ()) que fica como justificação de suporte. Não sabemos nada de N7 e por isso não conseguimos saber se (SL (N7) ()) é válida ou inválida. Sem I5 a In nada sabemos sobre N6, N7, N8, N9 e N10.

N6 fica a In porque tem uma justificação válida que fica como justificação de suporte: (SL (N5) ()); a outra é inválida.

(8)

N8 fica a Out porque as suas únicas justificações são inválidas. N9 fica a Out porque a sua única justificação é inválida.

N10 fica a Out porque a sua única justificação é inválida.

Nota: Pode existir a tentação errada, olhando para o estatuto dos nós depois de

calculados, de atribuir como justificação de suporte do nó a N5 a sua segunda justificação, (SL (N7) ()). No entanto, o estatuto de N7 depende de N6 que depende de N5. N5, N6 e N7 estariam em circularidade se N5 não tivesse a justificação (SL () ()) Para que N6 tenha o estatuto IN é preciso que N5 fique a In e para que N7 fique a In é preciso que N6 fique a IN. Logo N5 fica a IN devido a (SL () ()) que é válida e fica como justificação de suporte. A seguir, N6 e N7 ficarão a IN e N8, N9 e N10 ficam a Out.

b) Suponha agora que se retira a justificação (SL () ()) ao nó N5. Indique, justificando, os nós cujo estatuto teria que ser revisto e qual o seu novo valor. Como a justificação suporta N5 que está com o estatuto a In, vamos construir a lista formada pelo N5 e as suas repercussões.

L = {N5, N6, N7, N8, N9, N10}

Vamos colocar todos com o estatuto temporário Nil.

E vamos aplicar o algoritmo de cálculo do estatuto dos nós.

Não conseguimos calcular o estatuto para nenhum dos nós, permancendo todos a nil. Estamos perante uma circularidade!

Vamos aplicar o algoritmo de remoção de circularidades. E sempre que nos referirmos agora à validade ou invalidade estaremos a referirmo-nos à validade e invalidade não bem fundada.

N5 fica a Out (com N7 como suporte), porque a sua única justificação é inválida. Como todas as suas justificações são inválidas fica a Out;

N6 fica a Out porque agora ambas as suas justificações são inválidas e N2 e N5 ficam como seu suporte.

N7 fica a Out com N6 como suporte porque a sua única justificação é inválida. N8 fica a In porque tem uma justificação válida com suporte de N7.

Como não há repercussões de N8, continuamos.

N9 fica a In porque tem uma justificação válida com suporte de N8. Como não há repercussões de N9, continuamos.

(9)

Como não há repercussões e esgotámos a lista, ficámos com: Estatuto Etiqueta N1 Out N2 In (SL (N3) (N1)) N3 In (SL () ()) N4 In (SL (N1) ()) (SL (N2) ()) N5 Out (SL (N7) ()) N6 Out (SL (N5) ()) (SL () (N2)) N7 Out (SL (N6) ()) N8 In (SL () (N7)) N9 In (SL (N8) ()) N10 In (SL (N9) ())

c) Porque é que se exige o cálculo do fecho transitivo das consequências afectadas (e não de todas as consequências) de um nó após a modificação do conjunto respectivo de justificações (adição ou remoção)?

Porque não basta ser consequência. X pode ter várias justificações, umas válidas e outras não, sendo consequência de todos os nós referidos em qualquer das suas justificações. No entanto, o estatuto de um nó depende apenas de um conjunto de nós de suporte. Portanto, os nós só afectam o subconjunto de consequências para as quais são nós de suporte e não as consequências que não suportam.

(10)

Exercício IV

a) Represente, utilizando a lógica de omissão de Reiter, o conhecimento expresso no texto seguinte. Pode adicionar conhecimento do senso comum que ache que não está expresso. Não se esqueça de indicar o significado de cada predicado e dos seus argumentos.

Nem todas as pessoas cantam no banho, mas em geral fazem-no. É o caso de Florence Foster Jenkins, uma cantora lírica amadora americana, que cantava mal, mas que chegou a cantar uma vez no Carnegie Hall, não tendo recebido críticas desfavoráveis. Ela é um raro contra-exemplo, pois quem canta no Carnegie Hall não canta em geral nada mal. Quem canta mal recebe normalmente críticas desfavoráveis, a não ser que os críticos sejam amigos.

Constantes

flo: Florence Foster Jenkins

carnegie: A sala de concertos Carnegie Hall

cCH: o concerto de Florence Foster Jenkins na sala de concertos Carnegie

Hall.

Predicados

pessoa(X): X é uma pessoa.

cantora-lirica(X): X é uma cantora lírica.

americana(X): X é da nacionalidade americana. canta-no-banho(X): X canta no banho.

cantor-amador(X): X é cantor amador. canta-mal(X): X canta mal.

canta(X,Y): X dá concerto de canto Y.

concerto-em(C,L): L é o lugar do concerto C. critica(X,Y): X escreve critica Y.

sobre(C,E): A crítica C é referente ao evento E. favoravel(C): C é uma crítica favorável.

amigo(X,Y): X é amigo de Y.

Vamos ao que é verdadeiro e cuja maior parte está no texto. Há elementos que são do senso comum como o facto dos cantores líricos serem pessoas. ֎

 ={

cantora-lirica(flo) [FFJ é uma cantora lírica]

americana(flo), [FFJ é de nacionalidade americana] canta-mal(flo), [FFJ canta mal]

canta-banho(flo), [FFJ canta no banho]

canta(flo,cCH), [FFJ deu o concerto de canto cCH] cantor-amador(flo), [FFJ é uma cantora amadora]

(11)

X (pessoa(X)  canta-banho(X)) [Nem todas as pessoas cantam no banho] X (critica(X,cCH)  favoravel(X)), [cCH só teve críticas favoráveis]

X (cantora-lirica(X)  pessoa(X)) [As cantoras líricas são pessoas]} Vamos às regras de omissão

D={

Em geral as pessoas cantam no banho

) ( ) ( : ) ( X banho canta X banho canta X pessoa   ,

Quem canta em Carnegie Hall não canta mal em geral ) ( ) ( : ) , ( ) , ( X mal canta X mal canta carnegie C em concerto C X canta       ,

As críticas dos concertos das pessoas que cantam mal, são em geral desfavoráveis a não ser que os críticos sejam amigos.

) ( ) ( ) , ( : ) , ( ) , ( ) , ( ) ( C favoravel C favoravel X Cr amigo Y C sobre C Cr critica Y X canta X mal canta         }

b) Calcule as extensões da seguinte teoria de omissão: D={ e e d b b b b c b c b a c c : , : , : , : , :        } Δ={a, (b  c)  d}

A primeira e a terceira regras inibem a segunda. Quando se aplica a segunda permite-se a quinta. Quando se aplica a terceira e a segunda inibe-se a primeira. A primeira e a segunda também inibem a terceira. Quando se aplica a quarta também se permite a quinta. A segunda e a terceira inibem-se mutuamente.

Teremos assim uma extensão que deriva da aplicação da primeira e terceira, que inibem a segunda e a quarta e também a quinta..

Ext1 = T(W{ b, c})

Teremos outra extensão que deriva da aplicação da quarta, que inibe a terceira, e aplicamos também a primeira e segunda e a quinta.

Ext2 = T(W{b, c, b  c, e})

Teremos ainda uma terceira extensão que deriva de aplicarmos a terceira e a segunda que inibem a primeira e a quarta permitindo a quinta.

(12)

Exercício V

Decidiste construir um classificador perfeito para separar as imagens de cães e de gatos. Com a tua máquina fotográfica low-fi de 9 pixeis tiraste 4 fotografias de cães e outras 4 de gatos.

Estas são as figuras de cães (classe +):

cao1 cao2 cao3 cao4 Estas são as figuras de gatos (classe -):

gato1 gato2 gato3 gato4

Como características escolheste os valores dos pixeis, ordenados de cima para baixo e da esquerda para a direita.

onde xi está a 1 se o pixel correspondente na imagem estiver a preto ou será 0 se

estiver a branco.

Impressionado com a qualidade das fotos, queres usar um perceptrão para reconhecer os gatos e os cães. Quando o resultado do perceptrão for positivo, a classe prevista é a de cão, e quando dá um valor negativo a previsão é de gato. Para desempatar, como gostas mais de gatos do que cães, quando o valor for 0 a classe prevista é de gato.

a) Supõe que tens um perceptrão com os pesos w = (0, 0, 0, 1, -1, 0, -1, 1, 1). Qual a precisão deste perceptrão em termos do número de exemplares de cães bem classificados?

Se aplicarmos o perceptrão para classificar cao1, o que fazemos é pegar no vector de input que corresponde a cao1=(0, 0, 0, 0, 0, 0, 1, 0, 0) e fazemos o produto interno com o vector do perceptrão,

Cao1 . w = (0,0,0,0,0,0,1,0,0).(0,0,01,-1,0,-1,1,1)=-1

(13)

Se aplicarmos o perceptrão a cao2, obtemos de novo -1, prevendo que a imagem é um gato, novo erro.

Se aplicarmos o perceptrão a cao3, obtemos 1, não se enganando. Se aplicarmos o perceptrão a cao4 obtemos -1 que dá gata.

A precisão é de 1/4.

b) Usando a ordem da esquerda para a direita dos exemplos e primeiro os gatos e depois os cães, como ficam os pesos do perceptrao após a aprendizagem devido ao primeiro exemplar mal classificado?

Comecemos pelo gato1 cujo produto interno com W dá -1, prevendo a classe correcta, gato.

O produto interno do vector de gato2 com W dá 0 sendo da classe gato. Mais um input bem classificado.

O produto interno do vector de gato3 com w dá 0. Mais uma classificação correcta.

O produto interno do vector de gato4 com w dá -2. Mais uma classificação correcta. Todos os gatos são bem classificados.

Já vimos em a) que cao1 é mal classificado, obtendo-se o primeiro erro.

Vamos fazer a actualização dos pesos. Vamos a w adicionar o vector correspondente ao ponto cao1, pois y*(cao1)=+1.

W = (0,0,0,0,0,0,1,0,0) + (0,0,0,1,-1,0,-1,1,1) = (0,0,0,1,-1,0,0,1,1)

c) Indique se é possível ou não aprender um perceptrão que seja equivalente às regras de decisão seguintes, indicando um vector de pesos em caso afirmativo e justificando em caso negativo :

i) Classifica como cão se um qualquer pixel da linha do meio estiver pintado, senão classifica como gato.

O vector de pesos do perceptrão (0,0,0,1,1,1,0,0,0) garante sempre que quando um dos inputs da linha do meio estiver a 1, o produto interno é maior do que 0, sendo classificado como cão. E quando não temos nenhum pixel no meio o output do perceptrão é sinal(0)= -1, sendo gato, o que é correcto.

Também poderia ser o vector W=(0,0,0,2,2,2,0,0,0) ou W=(0,0,0,1,2,1,0,0,0) ou um número infinito deles.

(14)

ii) Classifica como gato se um qualquer pixel da linha do meio estiver pintado, senão classifica como cão.

O vector (0,0,0,-1,-1,-1,0,0,0) poderia ser uma hipótese mas não funciona porque quando a imagem tem pixeis pintados em alguma célula que não seja a linha do meio, obtemos um produto interno de 0, sendo prevista a classe gato, o que está errado.

O vector (0.1,0.1,0.1,-1,-1,-1,0.1,0.1,0.1) resolve esse problema (escolhemos 0.1 porque se todos os pixeis que não os do meio estiverem pintado e apenas um do meio estiver pintado teremos um valor de -1+0.6 que é negativo, i.e. gato, mas não funciona quando o cão corresponde a uma imagem toda vazia (todos os pixeis não pintados). O produto vectorial dará 0 sendo classificado como gato e deveria ser cão.

Precisamos então de um pendor. Aumentamos a dimensão para 10 em que o 10º input corresponde ao pendor. Como queremos que o valor do produto interno para um input (0,0,0,0,0,0,0,0,0,1) dê um valor positivo, dando cão, precisamos que o 10º peso do vector do perceptrão seja positivo. No entanto não pode ser >=1. E não pode sequer ser maior ou igual a 0.4, porque tem de dar valor negativo o produto interno bruto com o vector (1,1,1,1,0,0,1,1,1,1).

Pode ser o vactor (0.1, 0.1, 0.1, -1, -1, -1, 0.1, 0.1, 0.1, 0.1)

Vemos que o gato2, que nesta regra de decisão é um cão, é bem classificado como cão.

iii) Classifica como cão se houver só dois cantos pintados senão classifica como gato.

Este caso é impossível porque 0 e 1 cantos pintados é gato, 2 cantos pintados é cão e mais do que 2 é gato outra vez.

É um caso análogo ao XOR. 0 1’s e 2 1’s é de uma classe mas só um 1 já não. Um canto deve ter um valor positivo mas como fazemos para que se houver mais do que 2 cantos o peso baixe? Não há maneira dos pesos dependerem de um número exacto de 2 quaisquer cantos pintados. Seria possível se fosse dois ou mais cantos pintados, recorrendo a um pendor, como se pode ver no caso seguinte.

iv) Classifica como cão se houver pelo menos 3 pixeis pintados, senão classifica como gato.

Este caso resolve-se de novo com um pendor. W=(1,1,1,1,1,1,1,1,1,-2.5)

Com este vector o produto interno de um elemento de 0, 1 e 2 pixeis pintados dá um valor negativo (-2,5, -1,5, -0.5, respectivamente) e só dá positivo se houver pelo menos 3 pixeis pintados. Note que o 10º pixel é sempre 1.

Referências

Documentos relacionados

Excluindo as operações de Santos, os demais terminais da Ultracargo apresentaram EBITDA de R$ 15 milhões, redução de 30% e 40% em relação ao 4T14 e ao 3T15,

Este trabalho buscou, através de pesquisa de campo, estudar o efeito de diferentes alternativas de adubações de cobertura, quanto ao tipo de adubo e época de

A opção metodológica para avaliação de impacto ambiental justificou a adoção da estrutura de impactos adotada no Sistema de Avaliação de Impacto Ambiental da Inovação

5 “A Teoria Pura do Direito é uma teoria do Direito positivo – do Direito positivo em geral, não de uma ordem jurídica especial” (KELSEN, Teoria pura do direito, p..

Assim procedemos a fim de clarear certas reflexões e buscar possíveis respostas ou, quem sabe, novas pistas que poderão configurar outros objetos de estudo, a exemplo de: *

Considerando que, no Brasil, o teste de FC é realizado com antígenos importados c.c.pro - Alemanha e USDA - USA e que recentemente foi desenvolvido um antígeno nacional

By interpreting equations of Table 1, it is possible to see that the EM radiation process involves a periodic chain reaction where originally a time variant conduction

O desenvolvimento desta pesquisa está alicerçado ao método Dialético Crítico fundamentado no Materialismo Histórico, que segundo Triviños (1987)permite que se aproxime de