def

advertisement
recursive
An algorithm that solves a problem by reducing it to an
instance of the same problem with smaller input.
The principle of mathematical induction: the statement n P(n), is true if P(1) is
true and k (P(k) → P(k + 1)) is true.
Basis step: the proof of P(1) in a proof by mathematical induction of n P(n).
Inductive step: the proof of P(k) → P(k + 1) for all positive integers k in a proof by
mathematical induction of n P(n).
Strong induction: the statement n P(n) is true if P(1) is true and k [(P(1) ∧ P(2)
∧∙∙∙ ∧ P(k)) → P(k + 1) ].
Well-ordering property: every nonempty set of nonnegative integers has a least
element.
Generalized induction is used to prove results about sets other than the integers that
have the well-ordering property.
Recursive definition of a function: a definition of a function that specifies an initial
set of values and a rule for obtaining values of this function at integers from its
values at smaller integers.
Recursive definition of a set: a definition of a set that specifies an initial set of
elements and a rule for obtaining other elements from those in the set.
Structural induction: a technique for proving results about recursively defined
sets.
Recursive algorithm: an algorithm that proceeds by reducing a problem to the
same problem with smaller input.
Merge sort: a sorting algorithm that sorts a list by splitting it in two, sorting each of
the two resulting lists, and merging the results into a sorted list.
Iteration: a procedure based on the repeated use of operations in a loop.
–a ≡ b (mod m) is a relation on the set of integers.
–In a mod m = b, the notation mod denotes a function.
A positive integer p greater than 1 is called prime if the only positive factors of p are
1 and p.
A positive integer that is greater than 1 and is not prime is called composite.
The largest integer d such that d | a and also d | b is called the greatest
common divisor of a and b.
The greatest common divisor of a and b is denoted by gcd(a, b)
The least common multiple of the positive integers a and b is the smallest positive
integer that is divisible by both a and b.
It is denoted by lcm(a,b).
The Euclidian algorithm is an efficient method for computing the greatest common
divisor of two integers
The Caesar cipher is one of a family of ciphers called shift ciphers
—The process of recovering plaintext from ciphertext without knowledge both of
the encryption method and the key is known as cryptanalysis or breaking codes.
—Cryptographic protocols are exchanges of messages carried out by two or more
parties to achieve a particular security goal.
Key exchange is a protocol by which two parties can exchange a secret key over an
insecure channel without having any past shared secret information.
•Mathematical Induction
•Strong Induction
•Well-Ordering
•Recursive Definitions
•Structural Induction
•Recursive Algorithms
•Well-ordering property: Every nonempty set of nonnegative integers has a least
element.
An algorithm is a finite set of precise instructions for performing a
computation or for solving a problem.
The general searching problem is to locate an element x in the list of distinct
elements a1,a2,...,an, or determine that it is not in the list.
—To sort the elements of a list is to put them in increasing order (numerical order,
alphabetic, and so on).
—Optimization problems can often be solved using a greedy algorithm, which makes
the “best” choice at each step. Making the “best choice” at each step does not
necessarily produce an optimal solution to the overall problem, but in many
instances, it does.
•Tractable Problem: There exists a polynomial time algorithm to solve this problem.
These problems are said to belong to the Class P.
•Intractable Problem: There does not exist a polynomial time algorithm to solve this
problem
•Unsolvable Problem : No algorithm exists to solve this problem, e.g., halting
problem.
•Class NP: Solution can be checked in polynomial time. But no polynomial time
algorithm has been found for finding a solution to problems in this class.
•NP Complete Class: If you find a polynomial time algorithm for one member of the
class, it can be used to solve all the problems in the class.
Download