Esercizio espressione regolare da pattern

JoKeRxbLaCk93
Ciao a tutti, ho questo esercizio:
"Si dia un espressione regolare sull'alfabeto {a,b,c} che rappresenti il linguaggio definito dal pattern: $a^ncb^my$ con y $in$ { cc,ac} e con $n,m>0$.

Io l'ho risolto in questo modo, ma non so se corretto:
a^ncb^m(cc+ac)

Potrebbe essere corretto?

Risposte
onlyReferee
Ciao :!:
In realtà in questo modo hai di fatto riscritto il pattern. Tra l'altro scritto così il pattern non è nemmeno sintatticamente corretto poiché l'operatore $+$ richiede un'espressione sia a sinistra (che nel tuo caso è "cc") che a destra ($ac$ come hai giustamente scritto). Se applichi questa correzione e sostituisci $n$ ed $m$ con il $+$ allora ottieni l'espressione regolare corretta.
-----
Aggiorno rispetto al mio messaggio precedente: penso che sia un problema di LaTeX che, per qualche motivo, non visualizza correttamente "cc". Deduco allora tu abbia scritto quello ed, in tal caso, considera solo la seconda delle correzioni da me proposte.

JoKeRxbLaCk93
"onlyReferee":
Ciao :!:
In realtà in questo modo hai di fatto riscritto il pattern. Tra l'altro scritto così il pattern non è nemmeno sintatticamente corretto poiché l'operatore $+$ richiede un'espressione sia a sinistra (che nel tuo caso è "cc") che a destra ($ac$ come hai giustamente scritto). Se applichi questa correzione e sostituisci $n$ ed $m$ con il $+$ allora ottieni l'espressione regolare corretta.
-----
Aggiorno rispetto al mio messaggio precedente: penso che sia un problema di LaTeX che, per qualche motivo, non visualizza correttamente "cc". Deduco allora tu abbia scritto quello ed, in tal caso, considera solo la seconda delle correzioni da me proposte.

Ma infatti avevo scritto ac+cc solo che si è tolto :(
Quindi al posto di $n,m$ devo scriverci la $+$ ?

onlyReferee
Esatto, deve metterrci la $+$ ad esponente. Quell'operatore (come anche $\star$ e $+$) fa parte della sintassi per le espressioni regolari usata a livello "formale". Poi chiaramente in base all'ambiente in cui si lavora il sistema avrà la sua di sintassi per le regex (Windows ha la sua, i sistemi Unix la loro, ecc).

JoKeRxbLaCk93
"onlyReferee":
Esatto, deve metterrci la $+$ ad esponente. Quell'operatore (come anche ${}^\star e $+$) fa parte della sintassi per le espressioni regolari usata a livello "formale". Poi chiaramente in base all'ambiente in cui si lavora il sistema avrà la sua di sintassi per le regex (Windows ha la sua, i sistemi Unix la loro, ecc).

Ti ringrazio! :)

Rispondi
Per rispondere a questa discussione devi prima effettuare il login.