Shawn Zhong

Shawn Zhong

钟万祥
  • Tutorials
  • Mathematics
    • Math 240
    • Math 375
    • Math 431
    • Math 514
    • Math 521
    • Math 541
    • Math 632
    • Abstract Algebra
    • Linear Algebra
    • Category Theory
  • Computer Sciences
    • CS/ECE 252
    • CS/ECE 352
    • Learn Haskell
  • AP Notes
    • AP Microecon
    • AP Macroecon
    • AP Statistics
    • AP Chemistry
    • AP Physics E&M
    • AP Physics Mech
    • CLEP Psycho

Shawn Zhong

钟万祥
  • Tutorials
  • Mathematics
    • Math 240
    • Math 375
    • Math 431
    • Math 514
    • Math 521
    • Math 541
    • Math 632
    • Abstract Algebra
    • Linear Algebra
    • Category Theory
  • Computer Sciences
    • CS/ECE 252
    • CS/ECE 352
    • Learn Haskell
  • AP Notes
    • AP Microecon
    • AP Macroecon
    • AP Statistics
    • AP Chemistry
    • AP Physics E&M
    • AP Physics Mech
    • CLEP Psycho

Home / 2018 / Page 34

1.4 Predicates and Quantifiers

  • Jan 31, 2018
  • Shawn
  • Math 240
  • No comments yet
Propositional Logic Not Enough • If we have: ○ “All men are mortal.” ○ “Socrates is a man.” • Does it follow that “Socrates is mortal?” • Can’t be represented in propositional logic. • Need a language that talks about objects, their properties, and their relations. • Later we’ll see how to draw inferences. Introducing Predicate Logic • Predicate logic uses the following new features: ○ Variables: x, y, z ○ Predicates: P(x), M(x) ○ Quantifiers: exists and for all • Propositional functions are a generalization of propositions. ○ They contain variables and a predicate, e.g., P(x) ○ Variables can be replaced by elements from their domain. Propositional Functions • Propositional functions become propositions (and have truth values) when their variables are each replaced by a value from the domain (or bound by a quantifier). • The statement P(x) is said to be the value of the propositional function P at x. • For example, let P(x) denote “x0” and the domain be the integers. Then: ○ P(−3) is false. ○ P(0) is false. ○ P(3) is true. • Often the domain is denoted by U. So in this example U is the integers. Examples of Propositional Functions • Let “x+y=z” be denoted by R(x, y, z) and U be the integers. • Find these truth values: ○ R(2,−1,5) =F ○ R(3,4,7)=T ○ R(x, 3, z)⇒ Not a Proposition • Now let “x is the least number” be denoted by Q(x), with U={0,1,2,3,5}. • Find these truth values: ○ Q(0)=T ○ Q(5)=F ○ Q(6)⇒ undefined • What is Q(0) is U is the integers? Q(0)=F Compound Expressions • Connectives from propositional logic carry over to predicate logic. • If P(x) denotes “x0,” find these truth values: ○ P(3)∨ P(−1)=T∨F=T ○ P(3)∨ P(−1)=T∧F=F ○ P(3)→P(−1)=T→F=F ○ P(3)→¬P(−1)=T→T=T • Expressions with variables are not propositions and therefore do not have truth values. For example, ○ P(3)∧P(y) ○ P(x)→P(y) • When used with quantifiers (to be introduced next), these expressions (propositional functions) become propositions. Quantifiers • We need quantifiers to express the meaning of English words including all and some: ○ “All men are Mortal.” ○ “Some cats do not have fur.” • The two most important quantifiers are: ○ Universal Quantifier, “For all,” symbol: ∀ ○ Existential Quantifier, “There exists,” symbol: ∃ • We write as in ∀x P(x) and ∃x P(x). ○ ∀x P(x) asserts P(x) is true for every x in the domain. ○ ∃x P(x) asserts P(x) is true for some x in the domain. • The quantifiers are said to bind the variable x in these expressions. Universal Quantifier • ∀x P(x) is read as “For all x, P(x)” or “For every x, P(x)” • If P(x) denotes “x0” and U is the integers, then ∀x P(x) is false. • If P(x) denotes “x0” and U is the positive integers, then ∀x P(x) is true. • If P(x) denotes “x is even” and U is the integers, then ∀x P(x) is false. Existential Quantifier • ∃x P(x) is read as “For some x, P(x)”, or as “There is an x such that P(x),” or “For at least one x, P(x).” • If P(x) denotes “x0” and U is the integers, then ∃x P(x) is true. It is also true if U is the positive integers. • If P(x) denotes “x0” and U is the positive integers, then ∃x P(x) is false. • If P(x) denotes “x is even” and U is the integers, then ∃x P(x) is true. Thinking about Quantifiers • When the domain of discourse is finite, we can think of quantification as looping through the elements of the domain. • To evaluate ∀x P(x) loop through all x in the domain. • If at every step P(x) is true, then ∀x P(x) is true. • If at a step P(x) is false, then ∀x P(x) is false and the loop terminates. • To evaluate ∃x P(x) loop through all x in the domain. • If at some step, P(x) is true, then ∃x P(x) is true and the loop terminates. • If the loop ends without finding an x for which P(x) is true, then ∃x P(x) is false. • Even if the domains are infinite, we can still think of the quantifiers this fashion, but the loops will not terminate in some cases. Thinking about Quantifiers as Conjunctions and Disjunctions • If the domain is finite, a universally quantified proposition is equivalent to a conjunction of propositions without quantifiers and an existentially quantified proposition is equivalent to a disjunction of propositions without quantifiers. • If U consists of the integers 1,2, and 3: ○ ∀x P(x)≡P(1)∧P(2)∧P(3) ○ ∃x P(x)≡P(1)∨P(2)∨P(3) • Even if the domains are infinite, you can still think of the quantifiers in this fashion, but the equivalent expressions without quantifiers will be infinitely long. Precedence of Quantifiers • The quantifiers ∀ and ∃ have higher precedence than all the logical operators. • For example, ∀x P(x)∨Q(x) means (∀x P(x))∨Q(x) • ∀x (P(x)∨Q(x)) means something different. Translating from English to Logic • Every student in this class has taken a course in Java. ○ Solution 1 § If U=every student in the class § Let J(x)≔x has taken a course in Java § ∀x J(x) ○ Solution 2 § If U= every student § Let C(x)≔x is a student in the class § Let J(x)≔x has taken a course in Java § Let ∀x (C(x)→J(x)) • Some but not all students in this class has taken a course in Java. ○ Let C(x)≔x is a student in the class ○ Let J(x)≔x has taken a course in Java ○ Some but not all § ∃x J(x)∧¬∀x J(x) § ≡∃x J(x)∧ ∃x ¬J(x) ○ Solution § ∃x(C(x)∧J(x))∧¬∀x(C(x)→J(x)) § ≡∃x(C(x)∧J(x))∧¬∀x (C(x)→J(x)) § ≡∃x(C(x)∧J(x))∧∀x ¬(C(x)→J(x)) § ≡∃x(C(x)∧J(x))∧ ∃x (C(x)∧¬J(x)) Equivalences in Predicate Logic • Statements involving predicates and quantifiers are logically equivalent if and only if they have the same truth value ○ for every predicate substituted into these statements and ○ for every domain of discourse used for the variables in the expressions. • The notation S≡T indicates that S and T are logically equivalent. • Example: ∀x ¬¬S(x) ≡ ∀x S(x) Negating Quantified Expressions • Consider ∀x J(x) ○ “Every student in your class has taken a course in Java.” ○ Here J(x) is “x has taken a course in Java” and ○ the domain is students in your class. ○ Negating the original statement gives “It is not the case that every student in your class has taken Java.” ○ This implies that “There is a student in your class who has not taken Java.” ○ Symbolically ¬∀x J(x) and ∃x ¬J(x) are equivalent • Consider ∃x J(x) ○ “There is a student in this class who has taken a course in Java.” ○ Where J(x) is “x has taken a course in Java.” ○ Negating the original statement gives “It is not the case that there is a student in this class who has taken Java.” ○ This implies that “Every student in this class has not taken Java” ○ Symbolically ¬∃x J(x) and ∀x ¬J(x) are equivalent Equivalent Statements • ∀x(P(x)∧Q(x))≡∀x P(x)∧∀x Q(x) • ∀x(P(x)∨Q(x))≠∀x P(x)∨∀x Q(x) ○ Let U=N={0,1,2,3…} ○ Let P(x)≔x is even ○ Let Q(x)≔x is odd ○ ∀x(P(x)∨Q(x)): every natural number is even or odd ○ ∀x P(x)∨∀x Q(x): every natural number is even or every natural number is odd • ∀x P(x)≡∀z P(z) Lewis Carroll Example • The first two are called premises and the third is called the conclusion. 1. “All lions are fierce.” 2. “Some lions do not drink coffee.” 3. “Some fierce creatures do not drink coffee.” • Define ○ U≔ all creatures ○ L(x)≔x is a lion ○ F(x)≔x is fierce ○ C(x)≔x drinks coffee • Translation ○ ∀x (L(x)→F(x)) ○ ∃x (L(x)∧¬C(x)) ○ ∃x(F(x)∧¬C(x)) Some Predicate Calculus Definitions • An assertion involving predicates and quantifiers is valid if it is true ○ for all domains ○ every propositional function substituted for the predicates in the assertion. • Example: ∀x ¬S(x)⟷¬∃x S(x) • An assertion involving predicates is satisfiable if it is true ○ for some domains ○ some propositional functions that can be substituted for the predicates in the assertion. • Otherwise it is unsatisfiable. • Example: ∀x (F(x)⟷T(x)) not valid but satisfiable • Example: ∀x(F(x)∧¬F(x)) unsatisfiable
Read More >>

1.3 Propositional Equivalences

  • Jan 30, 2018
  • Shawn
  • Math 240
  • No comments yet
Tautologies, Contradictions, and Contingencies • Tautology ○ A tautology is a proposition which is always true. ○ Example: p∨¬p • Contradiction ○ A contradiction is a proposition which is always false. ○ Example: p∧¬p • Contingency ○ A contingency is a proposition which is neither a tautology nor a contradiction ○ Example: p Logically Equivalent • Two compound propositions p and q are logically equivalent if p↔q is a tautology. • We write this as p⇔q or as p≡q where p and q are compound propositions. • Two compound propositions p and q are equivalent if and only if the columns in a truth table giving their truth values agree. • Example p q ¬p ¬p∨q p→q T T F T T T F F F F F T T T T F F T T T De Morgan’s Laws • ¬(p∧q)≡¬p∨¬q • ¬(p∨q)≡¬p∧¬q • Truth Table p q ¬p ¬q p∨q ¬(p∨q) ¬p∧¬q T T F F T F F T F F T T F F F T T F T F F F F T T F T T Key Logical Equivalences • Identity Laws ○ p∧T≡p ○ p∨F≡p • Domination Laws ○ p∨T≡T ○ p∧F≡F • Idempotent Laws ○ p∨p≡p ○ p∧p≡p • Double Negation Law ○ ¬(¬p)≡p • Negation Laws ○ p∨¬p≡T ○ p∧¬p≡F • Commutative Laws ○ p∧q≡q∧p ○ p∨q=q∨p • Associative Laws ○ (p∨q)∨r=p∨(q∨r) ○ (p∧q)∧r=p∧(q∧r) • Distributive Laws ○ p∨(q∧r)≡(p∨q)∧(p∨r) ○ p∧(q∨r)≡(p∧q)∨(p∧r) • Absorption Laws ○ p∨(p∧q)≡p ○ p∧(p∨q)≡p • Logical Equivalences Involving Conditional Statements ○ p→q≡¬p∨q ○ p→q≡¬q→¬p ○ p∨q≡¬p→q ○ p∧q≡¬(p→¬q) ○ ¬(p→q)≡p∧¬q ○ (p→q)∧(p→r)≡p→(q∧r) ○ (p→r)∧(q→r)≡(p∨q)→r ○ (p→q)∨(p→r)≡p→(q∨r) ○ (p→r)∨(q→r)≡(p∧q)→r • Logical Equivalences Involving Biconditional Statements ○ p⟷q≡(p→q)∧(q→p) ○ p⟷q≡¬p⟷¬q ○ p⟷q≡(p∧q)∨(¬p∧¬q) ○ ¬(p⟷q)≡p⟷¬q Constructing New Logical Equivalences • We can show that two expressions are logically equivalent by developing a series of logically equivalent statements. • To prove that A≡B we produce a series of equivalences beginning with A and ending with B. ○ A≡A_1≡A_2≡…≡A_n≡B • Keep in mind that whenever a proposition (represented by a propositional variable) occurs in the equivalences listed earlier, it may be replaced by an arbitrarily complex compound proposition. Propositional Satisfiability • A compound proposition is satisfiable if there is an assignment of truth values to its variables that make it true. • When no such assignments exist, the compound proposition is unsatisfiable. • A compound proposition is unsatisfiable if and only if its negation is a tautology. Questions on Propositional Satisfiability • (p∨¬q)∧(q∨¬r)∧(r∨¬p) ○ p∨¬q=T⇒set p=T ○ q∨¬r=T⇒set q=T ○ r∨¬p=T⇒set r=T ○ One solution: p=q=r=T • (p∨¬q)∧(q∨¬r)∧(r∨¬p)∧(p∨q∨r)∧(¬p∨¬q∨¬r) ○ Not satisfiable. ○ Check each possible assignment of truth values to the propositional variables and none will make the proposition true. Notation • ⋁24_(j=1)^n▒p_j ≡p_1∨p_2∨…∨p_n • ⋀24_(j=1)^n▒p_j ≡p_1∧p_2∧…∧p_n Sudoku • A Sudoku puzzle is represented by a 9×9 grid made up of nine 3×3 subgrids, known as blocks. • Some of the 81 cells of the puzzle are assigned one of the numbers 1,2, …, 9. • The puzzle is solved by assigning numbers to each blank cell so that every row, column and block contains each of the nine possible numbers. • Example • Encoding as a Satisfiability Problem ○ Let p(i,j,n) denote the proposition that is true when the number n is in the cell in the ith row and the jth column. ○ There are 9×9×9 = 729 such propositions. ○ In the sample puzzle p(5,1,6) is true, but p(5,j,6) is false for j = 2,3,…, 9 ○ For each cell with a given value, assert p(i,j,n), when the cell in row i and column j has the given value. ○ Assert that every row contains every number. § ⋀24_(i=1)^9▒⋀24_(n=1)^9▒⋁24_(j=1)^9▒p(i,j,n) ○ Assert that every column contains every number. § ⋀24_(j=1)^9▒⋀24_(n=1)^9▒⋁24_(i=1)^9▒p(i,j,n) ○ Assert that each of the 3×3 blocks contain every number. § ⋀24_(r=0)^2▒⋀24_(s=0)^2▒⋀24_(n=1)^9▒⋀24_(i=1)^3▒⋁24_(j=1)^3▒p(3r+i,3s+j,n) ○ Assert that no cell contains more than one number. Take the conjunction over all values of n, n’, i, and j, where each variable ranges from 1 to 9 and n≠n′ of § p(i,j,n)→¬p(i,j,n′) • Solving Satisfiability Problems ○ To solve a Sudoku puzzle, we need to find an assignment of truth values to the 729 variables of the form p(i,j,n) that makes the conjunction of the assertions true. ○ Those variables that are assigned to yield a solution to the puzzle. ○ A truth table can always be used to determine the satisfiability of a compound proposition. ○ But this is too complex even for modern computers for large problems. ○ There has been much work on developing efficient methods for solving satisfiability problems as many practical problems can be translated into satisfiability problems.
Read More >>

1.2 Applications of Propositional Logic

  • Jan 30, 2018
  • Shawn
  • Math 240
  • No comments yet
Translating English Sentences • Steps to convert an English sentence to a statement in propositional logic ○ Identify atomic propositions and represent using propositional variables. ○ Determine appropriate logical connectives • Example: “If I go to Harry’s or to the country, I will not go shopping.” ○ p: "I go to Harry’s." ○ q: "I go to the country." ○ r: "I will go shopping." ○ p∨q→¬r • Example: “You can get an extra piece of pie if you have completed your homework or if you are extremely hungry” ○ p: You have completed your homework ○ q: You are extremely hungry ○ r: You can get an extra piece of pie ○ p∨q→r System Specifications • System and Software engineers take requirements in English and express them in a precise specification language based on logic. • Example: “The automated reply cannot be sent when the file system is full” ○ p: “The automated reply can be sent” ○ q: “The file system is full.” ○ q→¬ p Logic Puzzles • An island has two kinds of inhabitants, knights, who always tell the truth, and knaves, who always lie. • You go to the island and meet A and B. ○ A says “B is a knight.” ○ B says “The two of us are of opposite types.” • What are the types of A and B? ○ Let p and q be the statements that A is a knight and B is a knight, respectively. ○ So, then Øp represents the proposition that A is a knave and Øq that B is a knave. ○ If A is a knight, then p is true. Since knights tell the truth, q must also be true. Then (p ∧Øq)∨(Øp∧q) would have to be true, but it is not. So, A is not a knight and therefore Øp must be true. ○ If A is a knave, then B must not be a knight since knaves always lie. So, then both Øp and Øq hold since both are knaves. Logic Circuits • Electronic circuits; each input/output signal can be viewed as a 0 or 1. ○ 0 represents False ○ 1 represents True • Complicated circuits are constructed from three basic circuits called gates. ○ The inverter (NOT gate) takes an input bit and produces the negation of that bit. ○ The OR gate takes two input bits and produces the value equivalent to the disjunction of the two bits. ○ The AND gate takes two input bits and produces the value equivalent to the conjunction of the two bits. • More complicated digital circuits can be constructed by combining these basic circuits to produce the desired output given the input signals by building a circuit for each piece of the output expression and then combining them.
Read More >>

1.1 Propositional Logic

  • Jan 30, 2018
  • Shawn
  • Math 240
  • No comments yet
Propositions • Definition ○ A proposition is a declarative sentence that is either true or false. • Examples of propositions ○ The Moon is made of green cheese. ○ Paris is the capital of Europe. ○ Toronto is the capital of Canada. ○ 1 + 0 = 1 ○ 0 + 0 = 2 • Examples that are not propositions ○ Sit down! ○ What time is it? ○ x+1=2 ○ x+y=z Constructing Propositions • Propositional Variables: p, q, r, s, … • The proposition that is always true is denoted by T • The proposition that is always false is denoted by F. Compound Propositions • Definition ○ Propositions constructed from logical connectives and other propositions • Negation ¬ ○ The negation of a proposition p is denoted by ¬p ○ Truth table p ¬p T F F T ○ Example § If p denotes “The earth is round.” § Then ¬p denotes “It is not the case that the earth is round,” § Or more simply “The earth is not round.” • Conjunction ∧ ○ The conjunction of propositions p and q is denoted by p∧q ○ Truth Table p q p∧q T T T T F F F T F F F F ○ Example § If p denotes “I am at home.” and q denotes “It is raining.” § Then p∧q denotes “I am at home and it is raining.” • Disjunction ∨ ○ The disjunction of propositions p and q is denoted by p∨q ○ Truth Table p q p∨q T T T T F T F T T F F F ○ Example § If p denotes “I am at home.” and q denotes “It is raining.” § Then p∨q denotes “I am at home or it is raining.” • Inclusive Or vs Exclusive Or ○ “Inclusive Or” § In the sentence “Students who have taken CS202 or Math120 may take this class,” we assume that students need to have taken one of the prerequisites, but may have taken both. § This is the meaning of disjunction. § For p ∨ q to be true, either one or both of p and q must be true. ○ “Exclusive Or” § When reading the sentence “Soup or salad comes with this entrée,” we do not expect to be able to get both soup and salad. § This is the meaning of Exclusive Or (XOR). § In p⊕q , one of p and q must be true, but not both. § The truth table for ⊕ is: p q p⊕q T T F T F T F T T F F F • Implication → ○ If p and q are propositions, then p→q is a conditional statement or implication which is read as “if p, then q ” ○ Truth Table p q p→q T T T T F F F T T F F T ○ Example § If p denotes “I am at home.” and q denotes “It is raining.” § Then p→q denotes “If I am at home then it is raining.” ○ In p→q, p is the hypothesis (antecedent or premise) and q is the conclusion (or consequence). • Biconditional ↔ ○ If p and q are propositions, then we can form the biconditional proposition p↔q , read as “p if and only if q.” ○ Truth Table p q p↔q T T T T F F F T F F F T ○ If p denotes “I am at home.” and q denotes “It is raining.” then p↔q denotes “I am at home if and only if it is raining.” • Example p q (¬p)∧(¬q) (¬p)∨(¬q) T T F F T F F T F T F T F F T T Converse, Contrapositive, and Inverse • From p→q we can form new conditional statements . ○ q→p is the converse of p→q ○ ¬q→¬p is the contrapositive of p→q ○ ¬p→¬q is the inverse of p→q • Example ○ "If it is raining, then I will not go to town." ○ p: "It is raining" ○ q: "I am going to town" ○ Sufficient Condition § It raining is a sufficient condition for my not going to town. ○ Necessary Condition § My not going to town is a necessary condition for it raining. ○ Converse § If I do not go to town, then it is raining. ○ Inverse § If it is not raining, then I will go to town. ○ Contrapositive § If I go to town, then it is not raining. • Truth Table p q p→q q→p ¬q→¬p ¬p→¬q ¬(p→q) T T T T T T F T F F T F T T F T T F T F F F F T T T T F Truth Table for Compound Propositions • Construction of a truth table: ○ Rows § Need a row for every possible combination of values for the atomic propositions. ○ Columns § Need a column for the compound proposition (usually at far right) § Need a column for the truth value of each expression that occurs in the compound proposition as it is built up. § This includes the atomic propositions • Precedence of Logical Operators Operator Precedence ¬ 1 ∧ 2 ∨ 3 → 4 ↔ 5 • Example: p∨q→¬r p q r p∨q ¬r p∨q→¬r T T T T F F T F T T F F F T T T F F F F T F F T T T F T T T T F F T T T F T F T T T F F F F T T
Read More >>

0. Introductory Lecture

  • Jan 30, 2018
  • Shawn
  • Math 240
  • No comments yet
What is Discrete Mathematics? • Study of discrete (as opposed to continuous) objects • Calculus is continuous • Example of discrete objects ○ Integers ○ Steps taken by a computer program ○ Distinct paths to travel from point A to point B on a map along a road network ○ Ways to pick a wining set of numbers in a lottery Kinds of Problems Solved Using Discrete Mathematics • Number of valid passwords • Number of valid websites • Probability of winning a lottery • Link between two computers in a network • Identify spam e-mails • Shortest path • Prove there are infinitely many prime numbers • Numbers of steps need to do a sorting • Prove the correctness of algorithms Goals of a Course in Discrete Mathematics • Mathematical Reasoning • Combinatorial Analysis • Discrete Structures
Read More >>
  • 1
  • …
  • 32
  • 33
  • 34
  • 35
  • 36
  • …
  • 41

Search

  • Home Page
  • Tutorials
  • Mathematics
    • Math 240 – Discrete Math
    • Math 375 – Linear Algebra
    • Math 431 – Intro to Probability
    • Math 514 – Numerical Analysis
    • Math 521 – Analysis I
    • Math 541 – Abstract Algebra
    • Math 632 – Stochastic Processes
    • Abstract Algebra @ 万门大学
    • Linear Algebra @ 万门大学
    • Category Theory
  • Computer Sciences
    • CS/ECE 252 – Intro to Computer Engr.
    • CS/ECE 352 – Digital System Fund.
    • Learn Haskell
  • Course Notes
    • AP Macroeconomics
    • AP Microeconomics
    • AP Chemistry
    • AP Statistics
    • AP Physics C: E&M
    • AP Physics C: Mechanics
    • CLEP Psychology
  • 2048 Game
  • HiMCM 2016
  • 登峰杯 MCM

WeChat Account

Categories

  • Notes (418)
    • AP (115)
      • AP Macroeconomics (20)
      • AP Microeconomics (23)
      • AP Physics C E&M (25)
      • AP Physics C Mechanics (28)
      • AP Statistics (19)
    • Computer Sciences (2)
    • Mathematics (300)
      • Abstract Algebra (29)
      • Category Theory (7)
      • Linear Algebra (29)
      • Math 240 (42)
      • Math 375 (71)
      • Math 514 (18)
      • Math 521 (39)
      • Math 541 (39)
      • Math 632 (26)
  • Projects (2)
  • Tutorials (11)

Archives

  • October 2019
  • May 2019
  • April 2019
  • March 2019
  • February 2019
  • December 2018
  • November 2018
  • October 2018
  • September 2018
  • July 2018
  • May 2018
  • April 2018
  • March 2018
  • February 2018
  • January 2018
  • December 2017
  • November 2017
  • October 2017
  • September 2017
  • August 2017
  • July 2017
  • June 2017

WeChat Account

Links

RobeZH's thoughts on Algorithms - Ziyi Zhang
Copyright © 2018.      
TOP