Hacktoberfest 2026: le issue che i maintainer hanno segnato per ottobre, aperte e adatte ai principianti. Sfoglia le issue Hacktoberfest

Non-deterministic Turing machine

Aperta
#5 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
5/5
Tempo stimato
Più di una settimana
Idoneità per principianti
35/100
Tipo di issue
Funzionalità
Chiarezza
Abbastanza chiara
Stato di attività
Ferma
Stack tecnologico
typescript
Ambito
compilers

Direzione di ricerca

Non viene indicato alcun file, test o punto di ingresso. Inizia individuando l’implementazione esistente di una macchina di Turing classica e la relativa rappresentazione delle transizioni, quindi determina come rappresentare ed eseguire più scelte e scelte ponderate opzionali. Il lavoro è completato quando le transizioni non deterministiche funzionano e tutte le probabilità fornite sommano al 100%.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

enhancement good first issue

Describe the feature
Non-deterministic Turing machine is similar to already implemented classical Turing machine with one difference:
It can have multiple choices when reaching the same state and value.
Example:
Classic Turing machine instruction:
q1, 1 -> q2, 0, R.
Meaning: when you are in state q1 and encounter number 1 switch to state q2 replace number 1 with number 0 and move writing head to the right.
Non-deterministic Turing machine can have multiple choices:
q1, 1 -> q2, 0, R.
q1, 1 -> q1, 1, L.
q1, 1 -> q3, 0, S.
So in the same state it can either:

  1. Switch to state q2, write 0 and move right.
  2. Remain in state q1, write 1 and move left.
  3. Switch to state q3, write 0 and stay in the current cell.

Each choice has 33,(3)% change to be picked.

Optional requirement: if you are up for the additional challenge modify the changes for the instruction to be picked. Example:
q1, 1 -> q2, 0, R, 50
q1, 1 -> q1, 1, L, 10
q1, 1 -> q3, 0, S, 40
Now the first instruction has 50% chance to be picked, the second one 10% change and the last one 40% chance.
Make sure the chances sum to 100%.

Lingua principale
TypeScript
Stelle
0
Fork
0
Metriche di merge delle PR
Nessuna PR unita negli ultimi 30g

Preparare l'ambiente

Questo progetto non fornisce container di sviluppo, Dockerfile né guida per i contributori, quindi l'ambiente è a tuo carico: parti dal suo README e consulta la nostra guida al primo contributo per i passaggi generali.

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di EvalVis/TuringMachine

Tutte le issue di EvalVis/TuringMachine

Issue simili

Altre issue su TypeScript

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.