Regular Expressions Help: Find Language for DFA Drawing

In summary, the automaton for the language of {1^*\{00,010,\varnothing\}(01)^{*}} accepts the language if and only if the initial state is also accepting.
  • #1
evinda
Gold Member
MHB
3,836
0
Hello!
I have to draw the DFA of the language of the following expressions:
a){[tex]1^*\{00,010,\varnothing\}(01)^{*}[/tex]}
b)[tex](\{\{1,0\}^{*},(\varnothing,2)^*\})^{*}[/tex]

Could you help me to find the languages that are meant,so I can draw the DFAs?
 
Technology news on Phys.org
  • #2
evinda said:
Hello!
I have to draw the DFA of the language of the following expressions:
a){[tex]1^*\{00,010,\varnothing\}(01)^{*}[/tex]}
b)[tex](\{\{1,0\}^{*},(\varnothing,2)^*\})^{*}[/tex]

Could you help me to find the languages that are meant,so I can draw the DFAs?

Hi evinda! :)

Effort?
What do you already know about DFA's and what they look like?
 
  • #3
I like Serena said:
Hi evinda! :)

Effort?
What do you already know about DFA's and what they look like?

I know how to draw DFAs when I have a language,but I don't know how to find the language that is represented from the expressions above. :confused:

For example,if I had to draw the DFA,that accepts the language that contains the substring 001,I would do it like that: View attachment 1765
 

Attachments

  • dfa_001.jpg
    dfa_001.jpg
    16.5 KB · Views: 61
  • #4
How can I find,in general,the language of a regular expression?? :confused:
 
  • #5
evinda said:
How can I find,in general,the language of a regular expression??
This is just a remark (and a way to subscribe to the thread). There is no such thing as "finding the language" unless the language is finite. If the language is infinite, you cannot communicate or learn it as a set of words. Instead, you have to communicate some finite description of the language. Now, there is no canonical representation of a regular language. It can be described by a finite automaton, a regular expression, or a formula in first-order logic, and none of these is a priori better than the rest. For example, as you get familiar with regular expressions, they may become your preferred representation of regular languages.
 
  • #6
Evgeny.Makarov said:
This is just a remark (and a way to subscribe to the thread). There is no such thing as "finding the language" unless the language is finite. If the language is infinite, you cannot communicate or learn it as a set of words. Instead, you have to communicate some finite description of the language. Now, there is no canonical representation of a regular language. It can be described by a finite automaton, a regular expression, or a formula in first-order logic, and none of these is a priori better than the rest. For example, as you get familiar with regular expressions, they may become your preferred representation of regular languages.

I understood...I tried to draw the finite automaton of the regular expression {[tex]1^*\{00,010,\varnothing\}(01)^{*}[/tex]} and that's what I did.Is this right? :)
View attachment 1767
 

Attachments

  • aut.jpg
    aut.jpg
    31.7 KB · Views: 61
Last edited:
  • #7
Or am I wrong?If we have this: [tex] \{00,010,\varnothing\}[/tex],do the automaton has to read all of these: [tex] 00,010,\varnothing\ [/tex] or just one of them?
 
  • #8
evinda said:
I tried to draw the finite automaton of the regular expression {[tex]1^*\{00,010,\varnothing\}(01)^{*}[/tex]} and that's what I did.Is this right?
Notations for regular expressions differ. Does comma denote alternation? Is there a difference between curly braces and parentheses? Why is the complete expression surrounded by curly braces?
 
  • #9
Evgeny.Makarov said:
Notations for regular expressions differ. Does comma denote alternation? Is there a difference between curly braces and parentheses? Why is the complete expression surrounded by curly braces?

Oh sorry, the complete expression is not surrounded by curly braces. It is: [tex]1^*\{00,010,\varnothing\}(01)^{*}[/tex].

With the parentheses I think that it is meant that $0$ is followed by $1$ and this sequence appears $n$ times with $n \geq 0$.

And in the curly braces the comma may denote the alternation.
 
  • #10
evinda said:
Oh sorry, the complete expression is not surrounded by curly braces. It is: [tex]1^*\{00,010,\varnothing\}(01)^{*}[/tex].

With the parentheses I think that it is meant that $0$ is followed by $1$ and this sequence appears $n$ times with $n \geq 0$.

And in the curly braces the comma may denote the alternation.

Looks like your off in the right direction! :D

Except... that with the commas between {} that mean alternation, your graph should be slightly different...
 
  • #11

Attachments

  • f_a.jpg
    f_a.jpg
    32.3 KB · Views: 57
  • #12
Looking good! ;)

One problem left. There is no such thing as an $\varepsilon$ transition.
It would be "no-input", which would not be deterministic.

Can you think of another (deterministic) transition that accepts either a '0' or a '1' that will show the same behavior?
And/or perhaps no transition at all, but marking the state as a final state?
 
  • #13
Here is my version.

automaton4.png


Missing arrows lead to sink.

Edit: Made the initial state to be also accepting in order to accept 1*. Still no warranty. :)
 
Last edited:
  • #14
Thank you very much! :rolleyes:
 

1. What are regular expressions?

Regular expressions (regex) are a sequence of characters that define a search pattern, typically used for string matching and manipulation. They are a powerful tool for finding and extracting specific patterns of text within a larger body of text.

2. How are regular expressions represented visually in DFA drawings?

In DFA (Deterministic Finite Automaton) drawings, regular expressions are represented as a series of states and transitions between states. Each state represents a particular part of the regex pattern, and the transitions between states indicate the rules for matching the pattern.

3. What is the purpose of using regular expressions in DFA drawings?

The purpose of using regular expressions in DFA drawings is to provide a visual representation of a regex pattern. This can help to better understand how the pattern works and how different parts of the pattern are connected. It can also serve as a helpful tool for debugging and troubleshooting regex patterns.

4. How can I use regular expressions to find specific patterns in a text?

To use regular expressions to find specific patterns in a text, you can use a variety of special characters and operators that have specific meanings in regex. These can be used to define the pattern you want to match and can be customized to suit your specific needs. Additionally, there are many online resources and tools available to help you learn and test out different regex patterns.

5. Are regular expressions case-sensitive?

Yes, regular expressions are case-sensitive by default. This means that uppercase and lowercase letters are treated as distinct characters and will not match if they are not specified correctly in the pattern. However, many regex engines have options to make them case-insensitive if needed.

Similar threads

  • Programming and Computer Science
Replies
1
Views
2K
  • Programming and Computer Science
Replies
4
Views
1K
  • Programming and Computer Science
Replies
6
Views
3K
  • Programming and Computer Science
Replies
2
Views
1K
  • Programming and Computer Science
Replies
10
Views
3K
  • Engineering and Comp Sci Homework Help
Replies
1
Views
871
  • Programming and Computer Science
Replies
10
Views
7K
  • Programming and Computer Science
Replies
8
Views
2K
Replies
12
Views
3K
  • Engineering and Comp Sci Homework Help
Replies
1
Views
656
Back
Top