Differences

This shows you the differences between two versions of the page.

Link to this comparison view

lfa:languages [2017/10/11 12:51]
pdmatei created
lfa:languages [2018/07/20 12:00] (current)
pdmatei [Computing L(e) - a semantics for regular expressions]
Line 95: Line 95:
   * can we afford to define any kind of programming language, without affecting the parsing process?   * can we afford to define any kind of programming language, without affecting the parsing process?
   * can we build parsers for natural language?   * can we build parsers for natural language?
-  * what is the relationship between Languages and Complexity Theory?+  * what is the relationship between ​ 
 +Languages and Complexity Theory?
   ​   ​
 We shall address most of these questions throughout the lecture. But for now, we return to regular expressions. We shall address most of these questions throughout the lecture. But for now, we return to regular expressions.
Line 110: Line 111:
   * **kleene-star**:​ the language $math[A*] is the set $math[\{w \in\Sigma^* \mid w = w_1\ldots w_n, n\geq 0, w_1, \ldots, w_n \in A\}] of zero or more concatenations of any word from $math[A].   * **kleene-star**:​ the language $math[A*] is the set $math[\{w \in\Sigma^* \mid w = w_1\ldots w_n, n\geq 0, w_1, \ldots, w_n \in A\}] of zero or more concatenations of any word from $math[A].
  
-Next, we can define rules for determining the language ​accepted ​by a regular expression. +Next, we can define rules for determining the language ​generated ​by a regular expression. 
-  * the language ​accepted ​by the regular expression $math[\emptyset] is simply the empty language $math[\emptyset]. +  * the language ​generated ​by the regular expression $math[\emptyset] is simply the empty language $math[\emptyset]. 
-  * the language ​accepted ​by the regular expression $math[c], for $math[c\in\Sigma] is $math[L(c)=\{c\}] (a single-word set).+  * the language ​generated ​by the regular expression $math[c], for $math[c\in\Sigma] is $math[L(c)=\{c\}] (a single-word set).
   * $math[L(e*)] is the language $math[(L(e))*],​ i.e. the **kleene star** of the language $math[L(e)].   * $math[L(e*)] is the language $math[(L(e))*],​ i.e. the **kleene star** of the language $math[L(e)].
   * $math[L(ee'​)] is $math[L(e)L(e'​)]   * $math[L(ee'​)] is $math[L(e)L(e'​)]
Line 118: Line 119:
  
 Returning to our previous example, the language $math[L((A\cup B)(a\cup b)*(0 \cup 1)*)] is: Returning to our previous example, the language $math[L((A\cup B)(a\cup b)*(0 \cup 1)*)] is:
-  * $math[L(A\cup B) L((a\cup b)*) L((0 \cup 1)*))], i.e.+  * $ 
 +math[L(A\cup B) L((a\cup b)*) L((0 \cup 1)*))], i.e.
   * $math[L(A\cup B) L((a\cup b))* L((0 \cup 1))*)], i.e.   * $math[L(A\cup B) L((a\cup b))* L((0 \cup 1))*)], i.e.
   * $math[(L(A)\cup L(B)) (L(a) \cup L(b))* (L(0) \cup L(1))*], i.e.   * $math[(L(A)\cup L(B)) (L(a) \cup L(b))* (L(0) \cup L(1))*], i.e.