El dt 19 de 06 de 2012 a les 16:19 +0200, en/na Hrvoje Peradin va
escriure:
> Hello to all,
> 
> I am currently working on the rule-based finite state disambiguation
> task for GSoC, and I'm making some additions to lttoolbox for
> constructing FST's from regexes.
> 
> Right now I'm trying to implement the complement, however I've ran
> into a strange problem. The algorithm is determinize + complete +
> invert_final/nonfinal, and the implementation should be fine.
> 
> e.g. for the foma regex ~[{ab}] the transducer that gets built is (the
> .png of the graph in the attachment):
> 0     4       ε       ε       
> 0     1       a       a       
> 0     2       b       b       
> 1     4       ε       ε       
> 1     3       b       b       
> 1     2       a       a       
> 2     4       ε       ε       
> 2     2       a       a       
> 2     2       b       b       
> 3     2       a       a       
> 3     2       b       b       
> 4
> 
> I'm executing the transducer with the recipe described on the wiki [
> http://wiki.apertium.org/wiki/Lttoolbox_API_examples ], this is my
> code [ http://pastebin.com/tkehc0VV ].
> 
> On the alphabet {a, b} this transducer should recognise anything
> except "ab", however, with the code I am using to execute it it
> recognises only Ø and "a" (?). It seems that the execution algorithm
> does not take into account the ε-transition 2->4. Does anybody have an
> idea what could be going wrong here?

I think you explicitly have to do the epsilon closure. Here is some code
from the 'recognise()' method in the Transducer class:

        if(l.find(*it) != wstring::npos || l == L"")
        {
          set<int> myclosure = closure(it3->second, 0);
          new_state.insert(myclosure.begin(), myclosure.end());
          //wcerr << L"Size alives: " <<new_state.size() << endl;  
        }

If something like this doesn't work, email the list again :)

F.


------------------------------------------------------------------------------
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
_______________________________________________
Apertium-stuff mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/apertium-stuff

Reply via email to