read more
Reflexive is for all x, R has (x,x). all loops are present. 
Symmetric is (x,y) in R —> (y,x) All paths are two way. 
Transitive is if (x,y) and (y,z) then (x,z). That is, all two step ways I can get in one step. 




{a}*{b}* neql {a}*U{b}* because you can’t do aba. 

ab (emptyset) = emptyset 

Nondeterminstic always guesses right: Because there is at least one computation sequence leading to acceptance the string is accepted by this automaton.

You can take out e arrows without adding states, just add more arrows. 

Every n state nondeterminstic without e arrows can be converted to deterministic with at most 2^n states. 

If L1 and L2 are regular, then the following are too: 
	L1 U L2 (union)
	L1L2 (concatenation)
	L1*
	L1 intersect L2 
	

Remember for Kleene star of a sequence, you have to take into account that the starting state has to be accepting. You should have start state excepting then an e arrow to another non accepting state. 

Keep in mind 



If you start with an accepting state, then the regex should include the empty set somewhere/you should star the entire thing because you could do the regex iteratively.