Presentation is loading. Please wait.

Presentation is loading. Please wait.

Computing Fundamentals 2 Overview Lecturer: Patrick Browne Room [KA] - 3-020, Lab [KA] - 1-017 Based on Chapter 19. A Logical approach to Discrete Math.

Similar presentations


Presentation on theme: "Computing Fundamentals 2 Overview Lecturer: Patrick Browne Room [KA] - 3-020, Lab [KA] - 1-017 Based on Chapter 19. A Logical approach to Discrete Math."— Presentation transcript:

1 Computing Fundamentals 2 Overview Lecturer: Patrick Browne Room [KA] - 3-020, Lab [KA] - 1-017 Based on Chapter 19. A Logical approach to Discrete Math By David Gries and Fred B. Schneider http://www.comp.dit.ie/pbrowne/compfund2/compfun2.htm

2 Computing Fundamentals 2 This module presents further theoretical aspects of computer science which are necessary to support and enhance other modules on the course. In particular topics covered on this module will be required in computer technology, databases, object oriented programming, graphics programming, software engineering, programming, artificial intelignece, and algorithms. This module builds on the Fundamental of Computing 1 and also provides an introduction to graphs, lattices, algebras, and statistics.

3 Computing Fundamentals 2 Discrete mathematics permits us to describe our perception of the world and systems that manage information about that perception. A specification is the description of what a system should do. Discrete mathematics allows us to define functions, data types, operations, without prescribing algorithms. Logic allows us to prove that a design fulfills a specification. Ideally, we would prefer not to build a logical scaffolding around some less formal representation, rather we want to construct our specifications and programs using logical systems as the primary representation.

4 Computing Fundamentals 2 Software and information engineers use materials (i.e. concepts) whose behaviour is well understood. Our materials should have a simple mathematical model from which it is easy to predict the actual behaviour when placed in a know situation or context. The material used for Computing Fundamentals 1 & 2 are mathematical concepts represented in CafeOBJ

5 What is a Programming Language? A PL helps people to express ideas in a form that can be understood by a computer. Figure based on: Java Programming for Spatial Sciences by Jo Wood

6 Computing Fundamentals 2 Mathematics helps minimize ambiguity. The following pair of signs are displayed at the foot of an escalator. What do they mean? Shoes Must Be Worn Dogs Must Be Carried

7 Computing Fundamentals 2 Mathematics helps minimize ambiguity. The following pair of signs are displayed at the foot of an escalator. What do they mean? (see handout) Shoes Must Be Worn Dogs Must Be Carried Possible formalizations of above. A.  x (useEscalator(x)   y (PairOfShoes(y)  isWearing(x,y)) B.  x,y(useEscalator(x)  isDog(x)  isPerson(y))  isCarried(y,x)) Still many tacit assumptions e.g. in A x is assumed to be a person, in A & B the desire to ascend the escalator is assumed.

8 Computing Fundamentals 2 Graph Theory: Definition, properties, graph representation, types, paths, cycles, isomorphism of graphs, planar graph, application of graphs to computing. Lattice Theory: lattice notation and definition, relations, closure of relations, ordered sets, partial orders, linear orders, application of lattices to computing.

9 Computing Fundamentals 2 Algebraic Structures and Techniques: algebras, theories, models, composition, abstract data types (ADTs), languages for algebraic specification and programming, applications to lists, strings, queues, sacks, trees, etc. Statistics: range, mode, median, mean, standard deviation, variance, sampling and sampling distributions, probability, hypothesis testing, applications of statistics.

10 Computing Fundamentals 2 Supporting software: The above topics will be supported by CafeOBJ and Concept Explorer. Two small assignments. – CafeOBJ, Graph Theory. –Concept Explorer, Lattices


Download ppt "Computing Fundamentals 2 Overview Lecturer: Patrick Browne Room [KA] - 3-020, Lab [KA] - 1-017 Based on Chapter 19. A Logical approach to Discrete Math."

Similar presentations


Ads by Google