Paper on grammars | Computer Science homework help

Objective:To acquire a comprehensive understanding of the application of grammars and formal language theory to computing languages.Given:
Consider the following set of productions:

P01:
FN

FN–HEAD FN–BODY

P02:
FN–HEAD

TYPE id ( PARAM–LIST )

P03:
TYPE

char

P04:
TYPE

int

P05:
TYPE

real

P06:
PARAM–LIST

TYPE id

P07:
PARAM–LIST

PARAM–LIST , TYPE id

P08:
FN–BODY

{ VAR–DECL STMT return ( EXPRESN ) ; }

P09:
VAR–DECL

λ

P10:
VAR–DECL

TYPE ID–LIST ;

P11:
VAR–DECL

VAR–DECL TYPE ID–LIST ;

P12:
ID–LIST

id

P13:
ID–LIST

ID–LIST , id

P14:
STMT

λ

P15:
STMT

SIMPLE–STMT

P16:
STMT

SELECT–STMT

P17:
STMT

REPEAT–STMT

P18:
STMT

SEQUENCE–STMT

P19:
SIMPLE–STMT

ASSIGN–STMT

P20:
SIMPLE–STMT

FN–CALL–STMT

P21:
ASSIGN–STMT

var = EXPRESN ;

P22:
EXPRESN

ARITH–EXP

P23:
EXPRESN

BOOL–EXP

P24:
ARITH–EXP

TERM

P25:
ARITH–EXP

ARITH–EXP ADD–OP TERM

P26:
ADD–OP

+

P27:
ADD–OP

P28:
TERM

FAC

P29:
TERM

TERM MUL–OP FAC

P30:
MUL–OP

*

P31:
MUL–OP

/

P32:
FAC

( ARITH–EXP )

P33:
FAC

OPD

P34:
OPD

var

P35:
OPD

const

P36:
BOOL–EXP

RELN–EXP

P37:
BOOL–EXP

LOGIC–EXP

P38:
RELN–EXP

OPD RELN–OPR OPD

P39:
RELN–OPR

==

P40:
RELN–OPR

!=

P41:
RELN–OPR

<

P42:
RELN–OPR

<=

P43:
RELN–OPR

>

P44:
RELN–OPR

>=

P45:
LOGIC–EXP

OPD LOGIC–OPR OPD

P46:
LOGIC–EXP

LOGIC–OPR OPD

P47:
LOGIC–OPR

and

P48:
LOGIC–OPR

or

P49:
LOGIC–OPR

not

P50:
FN–CALL–STMT

id ( ARG–LIST ) ;

P51:
ARG–LIST

λ

P52:
ARG–LIST

id

P53:
ARG–LIST

ARG–LIST , id

P54:
SELECT–STMT

if CONDITION STMT else STMT

P55:
CONDITION

( BOOL–EXP )

P56:
REPEAT–STMT

DO–STMT

P57:
REPEAT–STMT

WHILE–STMT

P58:
DO–STMT

do { STMT } while CONDITION ;

P59:
WHILE–STMT

while CONDITION do { STMT } ;

P60:
SEQUENCE–STMT

STMT STMT

Instructions:

(30 points) Rewrite the set of productions above in Extended Backus-Naur Form (EBNF).

(35 points) Using a Push Down Automaton (PDA), determine if the following function is valid code according to the given set of productions.

int Max ( int x, int y ) { int z ;
if ( x >y ) z = x ; else z = y ;
return ( z ) ; }

(35 points) Validate your answer in (2) by illustrating it with a derivation tree

Deliverable:
Submit a paper Times New Roman font, 12 pt., double-space lines). The project must contain an introduction which includes the purpose of the project.

I attached the answers to 1 and 2 just look to make sure correct and write a paper.

The post Paper on grammars | Computer Science homework help appeared first on nursing writers.