test of fundamentals l.
Download
Skip this Video
Loading SlideShow in 5 Seconds..
TEST OF FUNDAMENTALS PowerPoint Presentation
Download Presentation
TEST OF FUNDAMENTALS

Loading in 2 Seconds...

play fullscreen
1 / 60

TEST OF FUNDAMENTALS - PowerPoint PPT Presentation


  • 210 Views
  • Uploaded on

TEST OF FUNDAMENTALS. all the concepts/vocabulary…. WEEK 1 TOPICS. Course overview Propositional logic LaTeX. CONCEPTS / VOCABULARY. Propositions Boolean variables Bit strings Truth value Truth table

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

TEST OF FUNDAMENTALS


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
test of fundamentals
TEST OF FUNDAMENTALS
  • all the concepts/vocabulary…
week 1 topics
WEEK 1 TOPICS
  • Course overview
  • Propositional logic
  • LaTeX
concepts vocabulary
CONCEPTS / VOCABULARY
  • Propositions
  • Boolean variables
  • Bit strings
  • Truth value
  • Truth table
  • Operators: Negation, conjunction, disjunction, exclusive or, implication, XOR, biconditional
  • Converse, inverse, contrapositive
concepts vocabulary4
CONCEPTS / VOCABULARY
  • Tautology, contradiction
  • Table 1.2.5 (p. 17) of logical equivalences:
    • Identity laws
    • Domination laws
    • Idempotent laws
    • Double negation law
    • Commutative laws
    • Associative laws
    • Distributive laws
    • De Morgan’s laws
week 2 topics
WEEK 2 TOPICS
  • Predicate logic and quantifiers
  • Sets and set operations
concepts vocabulary6
CONCEPTS / VOCABULARY
  • Predicate (a.k.a. propositional function)
  • Arguments (n-tuple)
  • Universe of discourse, syntax vs. semantics
  • Universal quantification 
  • Existential quantification 
  • Nesting of quantifiers
  • Binding variables, propositions
  • Negated quantifiers / equivalences
slide7
Definition of consistency: A set of propositions is consistent if there is an assignment of truth values to the variables that makes each expression true.
concepts vocabulary8
CONCEPTS / VOCABULARY
  • Sets, elements, members
  • N, Z, Z+, R
  • Set equality
  • Intensional (set builder) vs. extensional (enumerated) set definitions
  • Universal set
  • Empty/null set (), subset, proper subset, power set
  • Infinite sets, finite sets, cardinality
  • Ordered n-tuples, Cartesian product
concepts vocabulary9
CONCEPTS / VOCABULARY
  • Venn diagram
  • Union, intersection, difference (complement), symmetric difference
  • Disjoint sets
  • Principle of inclusion-exclusion
  • Set identities (Table 1.5.1: identity, domination, idempotent, complementation, commutative, associative, distributive, and De Morgan’s laws)
week 3 topics
WEEK 3 TOPICS
  • Functions
  • Sequences and summations
  • Growth of functions; big-O notation
concepts vocabulary11
CONCEPTS / VOCABULARY
  • Function/mapping
  • Domain, codomain, image, pre-image, range
  • One-to-one/injective, onto/surjective, one-to-one correspondence/bijective
  • Inverse/invertible functions, compositions, graphs
  • Floor, ceiling
concepts vocabulary12
CONCEPTS / VOCABULARY
  • Sequences, terms, strings
  • Arithmetic progressions, geometric progressions, geometric series
  • Summation , index of summation, lower and upper limit
  • Standard summation formulas: Table 1.6.2
  • Cardinality, countability
concepts vocabulary13
CONCEPTS / VOCABULARY
  • Big-O notation (upper bound on growth of f(x))
    • f(x) is O(g(x)) if there exist constants C and k such that |f(x)|  C |g(x)|whenever x  k
  • Triangle inequality
  • Growth of (f1 + f2)(x), (f1 f2)(x)
  • Big-Omega  (lower bound on growth of f(x))
  • Big-Theta  (upper and lower bound)
week 4 topics
WEEK 4 TOPICS
  • Algorithms
    • Algorithmic complexity
  • Integers
concepts vocabulary15
CONCEPTS / VOCABULARY
  • Algorithm: “Finite set of precise instructions”
    • Properties: Input, output, definiteness (preciseness), correctness, finiteness, effectiveness, generality
  • Pseudocode
  • Searching algorithms
    • Linear (sequential) search
    • Binary search
concepts vocabulary16
CONCEPTS / VOCABULARY
  • Computational complexity, time complexity, (space complexity)
    • Worst-case, average-case, best-case
    • Exponential complexity, polynomial complexity, linear complexity, logarithmic complexity
    • Tractability, intractability, unsolvability (halting problem, Alan Turing), NP vs. P, NP-complete
concepts vocabulary17
CONCEPTS / VOCABULARY
  • Fundamental Theorem of Arithmetic
    • Primes, composite numbers
    • Factoring
    • Division (quotient, remainder)
    • a | b
    • Greatest common divisor, least common multiple, relative primes
    • Modular arithmetic, congruence
  • “The Division Algorithm”
  • Note: We’ll revisit pp. 120-125 when we get to Section 2.5.
week 5 topics
WEEK 5 TOPICS
  • Integers and algorithms
  • Applications of number theory
  • Matrices
concepts vocabulary19
CONCEPTS / VOCABULARY
  • Euclidean algorithm
  • Base b expansions of integers (especially binary, hexadecimal)
  • Binary addition, binary multiplication, bit shifting
concepts vocabulary20
CONCEPTS / VOCABULARY
  • gcd as linear combination
  • Linear congruence
  • Fermat’s Little Theorem
  • Applications:
    • From Section 2.3: Hashing, pseudorandom numbers, cryptology
    • From Section 2.5: Chinese remainder theorem, computer arithmetic, pseudoprimes / Fermat’s Little Theorem, public key cryptography, RSA encryption/decryption
concepts vocabulary21
CONCEPTS / VOCABULARY
  • mxn matrices, rows, columns, equality
  • Matrix arithmetic, products
  • Identity matrix
  • Transpose At, symmetric matrices
  • Zero-one matrix, join (), meet (), Boolean product
week 6 topics
WEEK 6 TOPICS
  • Proof methods
  • Mathematical induction
concepts vocabulary23
CONCEPTS / VOCABULARY
  • Theorems
    • Axioms / postulates / premises
    • Hypothesis / conclusion
    • Lemma, corollary, conjecture
  • Rules of inference
    • Modus ponens (law of detachment)
    • Modus tollens
    • Syllogism (hypothetical, disjunctive)
    • Universal instantiation, universal generalization, existential instantiation (skolemization or Everybody Loves Raymond), existential generalization
concepts vocabulary ii
CONCEPTS / VOCABULARY II
  • Fallacies
    • Affirming the conclusion [abductive reasoning]
    • Denying the hypothesis
    • Begging the question (circular reasoning)
  • Proof methods
    • Direct proof
    • Indirect proof, proof by contradiction
    • Trivial proof
    • Proof by cases
    • Existence proofs (constructive, nonconstructive)
concepts vocabulary25
CONCEPTS/VOCABULARY
  • Proof by mathematical induction
    • Inductive hypothesis
    • Basis step: P(1) is true (or sometimes P(0) is true).
    • Inductive step: Show that P(n) P(n+1) is true for every integer n > 1 (or n > 0).
  • Strong mathematical induction (“second principle of mathematical induction”)
    • Inductive step: Show that [P(1)  …  P(n)]  P(n+1) is true for every positive integer n.
week 7 topics
WEEK 7 TOPICS
  • Recursion
  • Recursive and iterative algorithms
  • Program correctness
concepts vocabulary27
Concepts/Vocabulary
  • Recursive (a.k.a. inductive) function definitions
  • Recursively defined sets
  • Special sequences:
    • Factorial F(0)=1, F(n) = F(n-1)(n) = n!
    • Fibonacci numbers f0 = 0, f1 = 1, fn = fn-1 + fn-2
  • Strings
    • *: Strings over alphabet 
    • Empty string 
    • String length l(s)
    • String concatenation
concepts vocabulary28
Concepts / Vocabulary
  • Recursive algorithm
  • Iterative algorithm
concepts vocabulary29
Concepts / Vocabulary
  • Initial assertion, final assertion
  • Correctness, partial correctness, termination
    • “Partially correct with respect to initial assertion p and final assertion q”
  • Rules of inference
    • Composition rule
    • Conditional rules
    • Loop invariants
week 8 topics
WEEK 8 TOPICS
  • Counting
  • Inclusion-exclusion
  • Tree diagrams
  • Pigeonhole principle
concepts vocabulary31
Concepts/Vocabulary
  • Counting
    • Sum rule |A1 A2  …  Am| = |A1| + … + |Am| for disjoint Ai
    • Product rule |A1x A2 x … x Am| = |A1|  |A2| …  |Am|
    • Inclusion-exclusion |A1  A2| = |A1| + |A2| - |A1  A2|
  • Tree diagrams
concepts vocabulary32
Concepts / Vocabulary
  • Pigeonhole Principle
    • If k+1 or more objects are in k boxes, at least one box has two or more objects
  • Generalized pigeonhole principle
    • If N objects are in k boxes, one box has at least N/k objects
week 9 topics
WEEK 9 TOPICS
  • Permutations
  • Combinations
  • Binomial theorem
  • Discrete probability
  • Probability theory
concepts vocabulary34
Concepts/Vocabulary
  • Permutation, r-permutation
    • P(n, r) = n! / (n-r)!
  • r-combination
    • C(n, r) = (n choose r) = n! / (r! (n-r)!)
  • Pascal’s identity
    • (n+1 choose k) = (n choose k-1) + (n choose k)
  • Pascal’s triangle
  • Binomial theorem / binomial coefficients
    • (x+y)n = j=0n (n choose j) xn-j yj
concepts vocabulary35
Concepts / Vocabulary
  • Experiment, sample space, event
  • Laplace’s probability – p(E) = |E| / |S|
    • OK for finitely many equally likely outcomes
  • p(~E) = 1 – P(E)
  • p(E1  E2) = p(E1) + p(E2) when E1, E2 are disjoint
concepts and vocabulary
Concepts and Vocabulary
  • Axioms of probability: for a set of mutually exclusive outcomes sS,
    • 0  p(s)  1
    • sS p(s) = 1
  • Event: set of outcomes
  • Conditional probability p(E|F) = p(EF) / p(F)
  • Independence p(EF) = p(E) p(F), or p(E|F) = p(E)
  • Bernoulli trials (2 outcomes)
    • Binomial distribution b(k:n, p) = (n choose k) pk qn-k
  • Random variables, expected values
    • Independent random variables, variance
week 10 topics
WEEK 10 TOPICS
  • Recurrence relations and solutions
  • Divide-and-conquer recurrences
concepts vocabulary38
Concepts/Vocabulary
  • Recurrence relations
    • Solution / solution sequence
    • Initial conditions
  • Useful examples: compound interest, bunny rabbits / Fibonacci, Tower of Hanoi, Catalan numbers
concepts vocabulary39
Concepts / Vocabulary
  • Divide-and-conquer recurrence relations
    • f(n) = a f(n/b) + g(n)
week 11 topics
WEEK 11 TOPICS
  • (Probability theory cont.)
  • Generalized combinations and permutations
concepts vocabulary41
Concepts / Vocabulary
  • Permutations and combinations with repetition
    • “sampling with replacement”
    • Number of r-permutations of n objects with repetition = nr
    • Number of r-combinations of n objects with repetition = C(n+r-1, r) [D’Alembert’s method / bars and stars]
    • Table 4.6.1 gives formulas
  • Permutations with indistinguishable objecs
    • Theorem 3: Number of n-permutations of n objects, where there are ni objects of type i (i=1, …, k) = n! / (n1! n2! … nk!)
concepts vocabulary42
Concepts / Vocabulary
  • Inclusion-exclusion revisited…
    • |AB| = |A| + |B| - |AB|
  • Inclusion-exclusion generalized…
    • |ABC| = |A| + |B| + |C| - |AB| - |AC| - |BC| + |ABC|
  • Principle of Inclusion-Exclusion
    • |A1A2…An| = 1in|Ai| - 1i<jn|AiAj| - … + (-1)n+1 |A1A2…An|
    • Proof by mathematical induction…
  • Derangements
concepts vocabulary44
Concepts/Vocabulary
  • Binary relation R  A x B (also written “a R b” or R(a,b))
    • Relations on a set: R  A x A
  • Properties of relations
    • Reflexivity: (a, a)  R
    • Symmetry: (a, b)  R  (b, a)  R
    • Antisymmetry: (a, b)  R  a=b
    • Transitivity: (a, b)  R  (b, c)  R  (a, c)  R
  • Composite relation:
    • (a, c)  SR  bB: (a, b)R  (b, c) S
  • Powers of a relation: R1 = R, Rn+1 = Rn  R
  • Inverse relation: (b,a)  R-1  (a,b)  R
  • Complementary relation: (a,b) R  (a,b)  R
concepts vocabulary ii45
Concepts/Vocabulary II
  • n-ary relation: R  A1 x A2 x … x An
    • Ai are the domain of R; n is its degree (or arity)
    • In a database, the n-tuples in a relation are called records; the entries in each record (i.e., elements of the ith set in that n-tuple) are the fields
    • In a database, a primary key is a domain (set Ai) whose value completely determines which n-tuple (record) is indicated – i.e., there is only one n-tuple for a given value of that domain
    • A composite key is the Cartesian product of a set of domains whose values completely determine which n-tuple is indicated
  • Projection: delete certain fields in every record
  • Join: merge (union) two relations using common fields
concepts vocabulary46
Concepts / Vocabulary
  • Zero-one matrix representation of [binary] relations
    • Matrix interpretations of properties of relations on a set: reflexivity, symmetry, antisymmetry, and transitivity
  • Digraph representation of [binary] relations
    • Pictorial interpretations of properties of relations on a set
  • Closure of R with respect to property P
    • smallest relation containing R that satisfies P
    • Transitive closure, reflexive closure, …
    • Path analogy for transitive closures; connectivity relation R*; Algorithm 6.4.1 for computing transitive closure (briefly); Warshall’s algorithm (briefly)
concepts vocabulary48
Concepts/Vocabulary
  • Equivalence relation: Relation that is reflexive, symmetric, and transitive (e.g., people born on the same day, strings that are the same length)
    • Equivalence class: Set of all elements “equivalent to” a given element x (i.e., [x] = {y: (x,y)  R}).
    • Partition: disjoint nonempty subsets of S that have S as their union
    • The equivalence classes of a set form a partition of the set
concepts vocabulary 7 1
Concepts / Vocabulary [7.1]
  • Simple graph G = (V, E) – vertices V, edges E
    • A multigraph can have multiple edges between the same pair of vertices
    • A pseudograph can also have loops (from a vertex to itself)
    • In an undirected graph, the edges are unordered pairs
    • In a directed graph, the edges are ordered pairs
    • You should be familiar with all of these types of graphs, but for problem solving, you will only be using simple directed and undirected graphs
concepts vocabulary 6 2
Concepts/Vocabulary [6.2]
  • Adjacent, neighbors, connected, endpoints, incident
  • Degree of a vertex (number of edges), in-degree, out-degree; isolated, pendant vertices
  • Complete graph Kn
  • Cycle Cn (can also say that a graph contains a cycle)
  • Bipartite graphs, complete bipartite graphs Km, n
  • Wheels, n-Cubes (don’t need to know these)
  • Subgraph, union
concepts vocabulary51
Concepts/Vocabulary
  • Adjacency list, adjacency matrix, incidence matrix
  • Isomorphism, invariant properties
  • Paths, path length, circuits/cycles, simple paths/circuits
  • Connected graphs, connected components
    • Strong connectivity, weak connectivity
  • Cut vertices, cut edges
  • Euler circuit, Euler path
  • Hamilton path, Hamilton circuit
    • For this section (7.5), need to know terminology but not proofs
concepts vocabulary53
Concepts/Vocabulary
  • Formal language, syntax, semantics
    • Vocabulary (alphabet) V, word (sentence) V*, language V*
  • Phrase-structure grammar G=(V,T,S,P)
    • Alphabet V; terminal symbols TV; nonterminal elements N=V-T; start symbol SN; productions P: {xy: x, y  V*}
    • Derivation * (sequence of productions)
    • Derivation tree / parse tree
    • L(G): {wT*: S* w}
concepts vocabulary cont
Concepts/Vocabulary cont.
  • Types of grammars:
    • Type 0: no restrictions
    • Type 1 (context-sensitive): productions must be w1 or w1w2 where w2 has length  w1
    • Type 2 (context-free): All productions must have w1N (single symbol)
    • Type 3 (regular): All productions must have w1N and w2N or w2=aB where B N
  • (Top-down parsing, bottom-up parsing)
  • (Backus-Naur form)
concepts vocabulary55
Concepts/Vocabulary
  • Finite-state machine M=(S,I,O,f,g,s0):
    • States S, input alphabet I, output alphabet O, transition function f: SIS, output function g SIg, initial state s0S
  • State table, state diagram
  • (Mealy machines, Moore machines)
concepts vocabulary57
Concepts/Vocabulary
  • Language concatenation
    • Kleene closure A*: concatenation of 0 or more strings from A
  • Finite-state automaton (FSA) M=(S,I,f,s0,F): states S, input alphabet I, transition function f: SIS, initial state s0, final states F
    • “Recognize” a string (series of inputs) that results in a series of transitions starting at s0 and ending in any sF
  • Nondeterministic FSA M=(S,I,f,s0,F): transition function f: SIP(S) [power set of S]
    • “Recognizes” a string that can result in some series of transitions starting at s0 and ending in any sF
  • For any language recognized by a nondeterministic FSA, there is a deterministic FSA that recognizes the same language
concepts vocabulary58
Concepts/Vocabulary
  • Regular expressions: ,  = {}, xI = {x}, (AB) [concatenation], (AB) [union], and A* [Kleene closure]
  • Regular set: Any set that can be represented by a regular expression
    • Can be recognized using (deterministic) finite-state automata (Kleene’s Theorem)
    • “if” part proved by “constructive induction”
    • “only if” part left as **exercise 20
    • Regular set = regular (type 3) grammar!
  • (More powerful automata: Pushdown automaton, linear bounded automata)
concepts vocabulary59
Concepts/Vocabulary
  • Turing machine: general model of computation
    • Inventor Alan Turing
    • T=(S,I,f,s0): states S, alphabet I that includes blank symbol B, partial function f: SI  SI{R,L}, and start state s0S
    • Control unit has states S; read/write tape is infinite in both directions; single read/write head takes input from the tape, writes to the tape, and moves left or right
    • Specify as 5-tuples (s, x, s’, x’, d): in state s, if you read x, transition to state s’, output x’, and then move one step in direction d
concepts vocabulary ii60
Concepts/Vocabulary II
  • Halting and language recognition
    • T halts if f is undefined (i.e., no 5-tuple) for (s, x)
    • A final state is a state that no 5-tuple begins with (i.e., no transitions are defined from the state)
    • A string is recognized if T halts in a final state
    • A string is not recognized if T doesn’t halt, or halts in a state that isn’t final
  • Any problem that can be solved, or algorithm that can be written, with a digital computer, can also be solved with a Turing machine, despite its simplicity!
    • Church-Turing thesis: Any problem that can be solved with an effective algorithm can be solved with a Turing machine