Name of Subject  :

LOGICAL AND FUNCTIONAL PROGRAMMING ( 5 CS 6.1)

Unit

Contents

PROPOSITIONS: Fully parenthesized propositions, Evaluation of constant propositions, Evaluation of proposition

I

in a state. Precedence rules for operators, Tautologies, Propositions a sets of states and Transforming English to

prepositional form.

REASONING USING EQUIVALENCE TRANSFORMATIONS: The laws of equivalence, rules of substitution and

transitivity, formal system of axioms and Inference rules. NATURAL DEDUCTION SYSTEM: Introduction to

II

deductive proofs, Inference rules, proofs and sub-proofs, adding flexibility to the natural deduction system and

developing natural deduction system proofs.

PREDICATES: Extending the range of a state, Quantification, Free and Bound Identifiers, Textual substitution,

III

Quantification over other ranges and some theorems about textual substitution and states.

LOGIC PROGRAMMING: Introduction to prepositional and predicate calculus, First-order predicate calculus,

IV

Format logical systems, PROLOG programming-Facts, Rules and queries, Implementations, Applications,

Strengths and Weaknesses.

FUNCTIONAL PROGRAMMING:

Introduction to lambda calculus-Syntax and semantics, Computability and

correctness. Features of Functional Languages-Composition of functions, Functions as first-class Objects, no side

V

effects and clean semantics, LISP Programming-Data types and structures, Scheme dialect, primitive functions,

functions for constructing functions and functional forms. Applications of functional languages and comparison of

functional and imperative languages