Vous êtes sur la page 1sur 7

Semntica de linguagens

de programao
Trabalho escrito lgebra A
Rafael Libnio Solli e Rafagan Soares Carvalho
03/05/2013

Sumrio
Preliminares .................................................................................................................................. 2
Questo 1: ................................................................................................................................. 2
Questo 2: ................................................................................................................................. 2
Propriedades sintticas ................................................................................................................. 3
Questo 1: ................................................................................................................................. 3
Caso base............................................................................................................................... 3
Hiptese indutiva .................................................................................................................. 3
Questo 2: ................................................................................................................................. 3
Caso base............................................................................................................................... 3
Hiptese indutiva .................................................................................................................. 4
Propriedades semnticas .............................................................................................................. 4
Questo 1: ................................................................................................................................. 4
Questo 2: ................................................................................................................................. 4
Questo 3: ................................................................................................................................. 5
Questo 4: ................................................................................................................................. 5
Caso base............................................................................................................................... 6
Hiptese indutiva .................................................................................................................. 6
Concluso .............................................................................................................................. 6

Preliminares
Questo 1:
Expresses booleanas:
1.
2.
3.
4.
5.
Sentenas (programas):
1.
2.
3.
4.

+
*

*
*

5.

++
*

+}}+

Questo 2:
Todo programa composto por, no mnimo, uma sentena bem formada. Sendo assim,
temos como casos base os programas com apenas um construtor:
A)
B)

, onde o nico construtor;


, onde
o nico construtor.

Alm disso, temos tambm as sentenas formadas por outras sentenas, como o caso das
sentenas
e
. As sentenas do tipo
possuem ao menos um construtor
(o construtor ;), assim como as sentenas do tipo
(que possuem ao menos o
construtor
).
Dessa forma, podemos afirmar que um programa

possui no mnimo um construtor.

Propriedades sintticas
Questo 1:
Demonstrando por induo estrutural sobre a estrutura do programa bem formado
utilizando como medida de induo o nmero de construtores de .
Caso base
Utilizando como caso base

, h duas possibilidades:

O nmero de expresses booleanas


, assim como o nmero de
palavras reservadas e, portanto, a afirmativa vale por vacuidade.
Como em expresses aritmticas no ocorrem expresses
booleanas nem palavras reservadas , assim como no caso acima temos que o
nmero de expresses booleanas
, assim como o nmero de palavras
reservadas e, portanto, a afirmativa vale por vacuidade.

Hiptese indutiva
Supondo que, para todo
, se
possui
booleana vai estar precedida da palavra reservada
Seja o programa

com

construtores, ento qualquer expresso


.

construtores, h duas possibilidades:

Observe que o nmero de construtores de


e
estritamente
menor que . Logo, pela hiptese indutiva, qualquer ocorrncia de uma expresso
booleana vai estar precedida da palavra reservada
nas sentenas
e . Como
no introduz expresses booleanas nem palavras reservadas , o resultado segue.
* +
Nesse caso, assim como no caso acima, possui um nmero
de construtores menor que . Logo, pela hiptese indutiva, qualquer ocorrncia de
uma expresso booleana vai estar precedida da palavra reservada na sentena .
Como atende afirmativa, adicionando a palavra reservada
antes da expresso
booleana , e
no introduz expresses booleanas nem palavras reservadas , o
resultado segue.

Questo 2:
Demonstrando por induo estrutural sobre a estrutura do programa bem formado
utilizando como medida de induo o nmero de construtores de .
Caso base
Utilizando como caso base

, h duas possibilidades:

O nmero de *, + e

e, portanto, a afirmativa vale por

vacuidade.

Como em expresses aritmticas no ocorrem *, + nem palavras


reservadas , assim como no caso acima temos que o nmero de *, +
, assim
como o nmero de palavras reservadas e, portanto, a afirmativa vale por vacuidade.

Hiptese indutiva
Supondo que, para todo
, se possui construtores, ento o nmero de * corresponde
ao nmero de + e o nmero de * igual ao nmero de ocorrncias da palavra reservada .
Seja o programa

com

construtores, h duas possibilidades:

Observe que o nmero de construtores de


e
estritamente
menor que . Logo, pela hiptese indutiva, o nmero de * corresponde ao nmero de
+ e o nmero de * igual ao nmero de ocorrncias da palavra reservada
nas
sentenas
e . Como no introduz *, + nem palavras reservadas , o resultado
segue.
* +
Nesse caso, assim como no caso acima, possui um nmero
de construtores menor que . Logo, pela hiptese indutiva, o nmero de *
corresponde ao nmero de + e o nmero de * igual ao nmero de ocorrncias da
palavra reservada
na sentena . Como
atende afirmativa, adicionando
exatamente um *, um + e uma ocorrncia da palavra reservada , e
no introduz *,
+ nem palavras reservadas , o resultado segue.

Propriedades semnticas
Questo 1:
a.
b.
c.

(
(
(

d.

e.

;
)

;
)
(

(
substitudo por

)
ou ;

));

);

) , onde pode ser

Questo 2:
*

Questo 3:
Demonstrando por induo estrutural sobre a estrutura do programa bem formado
utilizando como medida de induo o nmero de construtores de .
Caso base
Utilizando como caso base

Seja o programa

, h duas possibilidades:

(
)
Como foi definida, a nica transio possvel para a configurao

. Sendo assim a afirmativa verdadeira, uma vez que a


:
transio para essa configurao realmente nica.
(
)
Tambm foi definido que a nica transio possvel para a

. Sendo assim a afirmativa verdadeira,


configurao
:
uma vez que a transio para essa configurao realmente nica.

Hiptese indutiva
Supondo que, para todo
ocorre de maneira nica.

com

, se

possui

construtores, a transio

construtores, h duas possibilidades:

)
pode assumir apenas as seguintes configuraes:

(

);

(

);

. A
J sabemos que a transio nica na configurao
, pois
afirmativa tambm verdadeira para a
, pois, pela hiptese indutiva, o nmero
de construtores de e estritamente menor que e o resultado segue.
* +( )
Nesse caso, assim como no caso acima,
possui um
nmero de construtores menor que . Como pode assumir apenas as configuraes:
* +

( );

* +

( );

J sabemos que a transio nica na configurao
. A afirmativa tambm
verdadeira para a
, uma vez o nmero de construtores de
estritamente menor
que e o resultado segue.

Questo 4:
Demonstrando por induo estrutural sobre a estrutura do programa bem formado
utilizando como medida de induo o nmero de construtores de .
Caso base
Utilizando como caso base

Seja o programa

, h duas possibilidades:

(
)
Como foi definida, a nica transio possvel para a configurao

. Sendo assim a afirmativa verdadeira, uma vez que


:
no possui construtores.
(
)
Tambm foi definido que a nica transio possvel para a

. Sendo assim a afirmativa verdadeira,


configurao
:
uma vez que no possui construtores.

Hiptese indutiva
Supondo que, para todo
( )
( ).

com

, se

possui

construtores e

, ento

construtores, h duas possibilidades:

(
)
Observe que o nmero de construtores de
e

estritamente menor que . Como pode assumir apenas as configuraes:

(

);

(

);
( ) na configurao
Pela hiptese indutiva, temos que ( )
. A

.
afirmativa tambm verdadeira para a
, uma vez que
* +( )
Nesse caso, assim como no caso acima,
possui um
nmero de construtores menor que . Como pode assumir apenas as configuraes:
* +

( );

* +

( );

* +) na configurao
(
Pela hiptese indutiva, temos que ( )
.A
afirmativa tambm verdadeira para a
, uma vez que no possui construtores.

Concluso
A prova acima suficiente para mostrar que todo programa nessa linguagem funciona, pois
podemos observar que, medida que as transaes vo ocorrendo, o nmero de operadores
restantes vai diminuindo.
Dessa forma, o programa tende a entrar nos casos base, onde
induo que, nesses casos, o programa termina.

e j foi demonstrado na

Vous aimerez peut-être aussi