Comments (3)
It just applies a simple algorithm to generate an eNFA - it makes no attempt to make it small or simple.
Enter your regex in http://ivanzuzak.info/noam/webapps/fsm_simulator/ and pick a DFA as a type, and you will get something which is likely equivalent to what you wrote (I didn't actually look at it). Note that the DFA formalism we're using here requires there to be a transition for every pair of states and input symbols, so there's an extra state compared to what you wrote.
from noam.
Yes, that one is indeed way better, and is equivalent to mine except for the extra state. Why does FSM2Regex not use that algorithm itself?
from noam.
Hi @josephcsible 👋 Thanks for sharing your thoughts here
Why does FSM2Regex not use that algorithm itself?
Because that's not the point of that specific tool. We built different tools for different purposes in order to illustrate different processes. That said, I wouldn't be opposed to adding an option to that FSM2Regex tool which forces the tool to create a minimal DFA instead of an eNFA
There's also a software library provided which you can use to build a custom tool which does what you want.
from noam.
Related Issues (20)
- Do you support Wildcard? HOT 1
- Can you produce DFA with OR statement HOT 1
- Generated DFA does not match input regex b*(d+a*)d HOT 1
- Transition graph not producing a graph HOT 3
- `ERROR` when converting from Ɛ-NFA to DFA HOT 2
- https://ivanzuzak.info/noam/webapps/fsm_simulator/ not generating transition graph HOT 1
- Not Working on Google Chrome HOT 1
- Website not working HOT 2
- I noticed there's an error thrown when converting regex to dfa HOT 1
- Dead link to the Grammophone HOT 1
- FSM2Regex missing "Create Automaton" button HOT 1
- DFA to regex conversion not fast enough
- RegEx to DFA conversion gives different answers to same regex HOT 1
- Issue with regular expression gym simplication HOT 1
- NFA to DFA
- Overlapping character issue in DFA HOT 1
- JSDiff not working HOT 2
- Wrong npm install command? HOT 1
- push down automata HOT 2
- program not recognizing OR operator
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from noam.