Αφού βοήθησε την Έθικ
να αποδράσει από τη φυλακή,
ο Χετζ την παίρνει μαζί του
σε έναν συνοικισμό στα σύνορα
στη σκιά του Bradbarrier, του μεγάλου
τείχους που περικυκλώνει το έθνος.
Όλοι οι κάτοικοι θα μαζευτούν σε λίγο
για το μηνιαίο τάισμα.
Ο κόσμος στο τείχος περνά τις μέρες του
συλλέγοντας έργα τέχνης και λογοτεχνίας
από όλη τη χώρα.
Την ημέρα του ταΐσματος, καταφθάνουν
τα ρομπότ-κλίβανοι και είναι πεινασμένα.
Αν φάνε, τα φώτα τους μένουν αναμένα
και η τροφή παραδίδεται.
Αν λιμοκτονήσουν, το ίδιο θα γίνει
και για τους ανθρώπους.
Τα καύσιμα του Χετζ τελειώνουν καθώς αυτός
κι η Έθικ πλησιάζουν τα προάστια της πόλης
και προετοιμάζονται
για μια ανώμαλη προσγείωση.
Ευτυχώς, όλοι είναι απασχολημένοι
ετοιμάζοντας το τάισμα για να προσέξουν.
Στο σημερινό τάισμα, η Έθικ
μπορεί να βρει την ηγέτιδα
ενός μυστικού κινήματος αντίστασης.
Αυτό το άτομο ξέρει πού βρίσκεται το πρώτο
από τα τρία πανίσχυρα αντικείμενα.
Το πρόβλημα είναι ότι ο Χετζ
και η Έθικ δε γνωρίζουν
το όνομα της ηγέτιδας της αντίστασης,
ούτε το πώς μοιάζει.
Αλλά ο Χετζ έχει συλλέξει
τις εξής πληροφορίες:
Η ηγέτιδα έχει πράσινα μάτια.
Αν η ηγέτιδα έχει κόκκινα μαλλιά, το όνομά της
έχει τουλάχιστον δύο ίδια γράμματα στη σειρά.
Αν η ηγέτιδα φοράει γυαλιά, το όνομά της
έχει ακριβώς 2 φωνήεντα.
Αλλιώς, το όνομά της έχει
ακριβώς τρία φωνήεντα.
Υπάρχει ακριβώς ένα άτομο για το οποίο
ισχύουν και τα τρία.
Επειδή είναι φυγάς,
η Έθικ δε μπορεί να χωθεί μέσα στο πλήθος
χωρίς να τραβήξει την προσοχή.
Αλλά μπορεί να δώσει οδηγίες στον Χετζ.
Και ένα εργαλείο που διαθέτει είναι αυτό
που οι προγραμματιστές ονομάζουν δομή ελέγχου
Είναι μια εντολή της μορφής
«Αν Α, τότε Β».
Τα διαγράμματα ροής παρουσιάζουν
πολύ παραστατικά το πώς λειτουργούν.
Αυτή η δομή ελέγχου μεταφράζεται σε:
αν το Α ισχύει, εκτέλεσε την εντολή Β.
Υπάρχουν επίσης δομές ελέγχου που παίρνουν
υπόψη τους διαφορετικές πιθανότητες.
Αυτή λέει «Αν το Α ισχύει, τότε
εκτέλεσε την εντολή Β.
Αλλιώς, εκτέλεση την εντολή C».
Ποιες οδηγίες πρέπει να δώσει στον Χετζ
ώστε να βρει την ηγέτιδα της αντίστασης;
Σταμάτα το βίντεο για να το σκεφτείς.
Σε ένα πρόβλημα σαν κι αυτό, μπορεί
να βοηθήσει μια πρώτη απλοποίηση.
Τι θα συμβεί αν ο Χετζ πρέπει απλά
να εξετάσει ένα μόνο άτομο;
Ποιες πληροφορίες πρέπει
να συλλέξει για αυτήν;
Μπορεί να ρωτήσει «έχει πράσινα μάτια»;
Τι άλλο πρέπει να ρωτήσει ο Χετζ
για να βρει την ηγέτιδα της αντίστασης
και πώς μπορεί να παρακολουθήσει
τις απαντήσεις;
Σταμάτα το βίντεο για να το σκεφτείς.
Μπορεί να φαίνεται ενστικτώδες πώς
θα προσεγγίζατε το πρόβλημα ως άνθρωποι.
Αλλά ο Χετζ δεν είναι άνθρωπος,
κι έτσι υπάρχει η πρόκληση
του να του δώσετε συστηματικές οδηγίες
που θα λειτουργήσουν σε κάθε σενάριο.
Ο Χετζ πρέπει να εξετάσει
τους κατοίκους έναν προς ένα,
μέχρι να ανακαλύψει το σωστό άτομο.
Με άλλα λόγια, όπως και με
την κλειδαριά στο κελί της φυλακής,
αυτή είναι μια δομή επανάληψης
που επαναλαμβάνει τις ίδιες οδηγίες.
Μόνο που αυτήν τη φορά, η επανάληψη
θα περιέχει μια σειρά από ερωτήσεις
με τη μορφή μιας δομής ελέγχου,
και θα ολοκληρωθεί μόλις ο Χετζ
βρει τον στόχο του.
Αλλά πρώτα, πρέπει να οργανώσετε
τις πληροφορίες σας.
Κάθε άτομο έχει κάποια χαρακτηριστικά:
χρώμα ματιών και μαλλιών, γυαλιά, όνομα.
Έχει αυτό το άτομο πράσινα μάτια;
Αν ναι, τσέκαρε το «χρώμα ματιών».
Αλλιώς, βάλε ένα Χ εκεί.
Αν έχουν κόκκινα μαλλιά, περιέχει
το όνομά τους ένα διπλό γράμμα;
Αν ναι, τσέκαρε το «χρώμα μαλλιών».
Αν δεν έχουν διπλό γράμμα, βάλε ένα Χ
δίπλα στο «χρώμα μαλλιών».
Όποια έχει κόκκινα μαλλιά, αλλά όχι διπλό
γράμμα, δε μπορεί να είναι η ηγέτιδα.
Αλλά πρόσεξε ότι, αν έχουν μπλε μαλλιά,
ο Χετζ θα παραλείψει αυτήν την ερώτηση
και θα προχωρήσει στην επόμενη.
Για την τελευταία ερώτηση,
μπορούμε να πούμε,
«Αν φορούν γυαλιά, έχει το όνομά τους
ακριβώς 2 φωνήεντα;
Αν δε φορούν γυαλιά, έχει το όνομά τους
ακριβώς 3 φωνήεντα;»
Θα υπάρχουν άνθρωποι στο πλήθος
γυαλιά και 1 φωνήεν,
ή χωρίς γυαλιά και με 2 φωνήεντα.
Αλλά δεν είναι το άτομο που ψάχνουμε
οπότε θα τους βάλουμε Χ.
Η ηγέτιδα της αντίστασης πρέπει να είναι
κάποια που έχει είτε τσεκάρισμα
είτε κενό δίπλα σε κάθε ερώτηση.
Τα κενά είναι ΟΚ, γιατί αν κάποια
έχει μπλε μαλλιά,
ο κανόνας για τα κόκκινα μαλλιά
δεν εφαρμόζεται σε αυτήν.
Μπορείς να ζητήσεις από τον Χετζ να κάνει
όλες τις ερωτήσεις σε κάθε άτομο
και να επιλέξει το άτομο που έχει μόνο
τσεκαρίσματα ή κενά.
Αλλά μπορείς να γλυτώσεις πολύ χρόνο:
μόλις ο Χετζ προσθέσει ένα Χ,
πες του να προχωρήσει στο επόμενο άτομο.
Δε χρειάζεται να ξέρεις την απάντηση
σε κάθε ερώτηση
ένα μόνο Χ σημαίνει ότι δεν είναι
το αντικείμενο της αναζήτησής σου.
Ο Χετζ βουΐζει μέσα στο πλήθος,
και μέσα σε λίγα λεπτά βρίσκει την Αντίλα,
την ηγέτιδα της αντίστασης,
και τη φέρνει πίσω στην Έθικ.
Η Αντίλα συμφωνεί να τους βοηθήσει
να κλέψουν το πρώτο αντικείμενο,
τον κόμβο της ισχύος, έναν όρο:
ότι η Έθικ και ο Χετζ θα ξεκινήσουν
την επανάσταση
επαναπρογραμματίζοντας τα ρομπότ-κλιβάνους
που τρομοκρατούν την πόλη.
Και ακριβώς εκείνη τη στιγμή,
τα ρομπότ κατεβαίνουν.