C'est un peu la preuve-golf -comme flics et voleurs défi. Ceci est le fil des flics; le fil des voleurs est ici.
Flics
Votre tâche consiste à définir un système de réécriture abstrait dans lequel l'accessibilité d'un mot à l'autre est difficile à déterminer. Vous préparerez les choses suivantes:
Un ensemble de symboles, appelé l'alphabet. (Vous pouvez utiliser des caractères Unicode pour ceux-ci, mais veuillez ne pas utiliser d'espaces ou de symboles difficiles à distinguer les uns des autres.)
Une chaîne source composée de symboles de votre alphabet.
Une chaîne cible composée de symboles de votre alphabet.
Un ensemble de règles de réécriture utilisant des caractères de votre alphabet. (Voir ci-dessous pour la définition d'une règle de réécriture.)
Une preuve montrant si votre chaîne source peut être convertie en votre chaîne cible par application successive de vos règles de réécriture. Cette preuve peut consister en une séquence réelle d'étapes de réécriture, ou une preuve mathématique qu'une telle séquence doit exister, ou une preuve mathématique qu'une telle séquence n'existe pas.
Vous publierez les quatre premiers de ceux-ci, en gardant la preuve secrète; les voleurs essaieront de déchiffrer votre réponse en fournissant leur propre preuve que votre chaîne cible peut ou ne peut pas être atteinte à partir de votre chaîne source. Si votre soumission n'est pas piratée dans les deux semaines , vous pouvez la marquer comme sûre et la modifier dans votre épreuve.
Les soumissions seront notées en fonction du nombre de caractères dans leurs règles de réécriture et de leurs chaînes source et cible, comme détaillé ci-dessous. Le gagnant sera la soumission non fissurée avec le score le plus bas.
Qu'est-ce qu'une règle de réécriture?
Une règle de réécriture est simplement une paire de chaînes dans votre alphabet. (L'une ou l'autre de ces chaînes peut être vide.) Une application d'une règle de réécriture consiste à rechercher une sous-chaîne égale à la première chaîne de la paire et à la remplacer par la seconde.
Un exemple devrait clarifier ceci:
Supposons que l'alphabet soit A
, B
et C
; la chaîne source est " A
"; la chaîne cible est " C
" et les règles de réécriture sont
A:B
B:BB
B:A
AA:C
alors la chaîne cible est accessible de la manière suivante:
A
B (using rule 1)
BB (using rule 2)
AB (using rule 3)
AA (using rule 3)
C (using rule 4)
Notation
Votre score sera
- la longueur de votre chaîne source,
- plus la longueur de votre chaîne cible,
- plus la longueur de toutes les chaînes incluses dans vos règles de réécriture,
- plus un point supplémentaire pour chaque règle de réécriture.
Si vous écrivez vos règles de réécriture avec un séparateur deux-points comme ci-dessus, il s'agit simplement de la longueur totale de toutes les règles de réécriture (y compris le séparateur), plus les longueurs des chaînes source et cible. Un score inférieur est préférable. Le nombre de caractères distincts de votre alphabet sera utilisé pour rompre les liens, moins étant mieux.
Prime
J'aimerais voir des réponses qui vont vraiment pour des scores faibles. Je vais attribuer 200 répétitions à la première réponse qui marque moins de 100 points dans ce défi et qui ne se fissure pas.
Mx -> Mxx
règle, donc cela finirait beaucoup plus compliqué que celui de Hofstadter original.