ΤΕΧΝΟΛΟΓΙΚΟ ΕΚΠΑΙΔΕΥΤΙΚΟ ΙΔΡΥΜΑ ΚΡΗΤΗΣ ΣΧΟΛΗ ΤΕΧΝΟΛΟΓΙΚΩΝ ΕΦΑΡΜΟΓΩΝ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ. «Σύστημα για Επεξεργασία Λογικών Εκφράσεων»

Μέγεθος: px
Εμφάνιση ξεκινά από τη σελίδα:

Download "ΤΕΧΝΟΛΟΓΙΚΟ ΕΚΠΑΙΔΕΥΤΙΚΟ ΙΔΡΥΜΑ ΚΡΗΤΗΣ ΣΧΟΛΗ ΤΕΧΝΟΛΟΓΙΚΩΝ ΕΦΑΡΜΟΓΩΝ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ. «Σύστημα για Επεξεργασία Λογικών Εκφράσεων»"

Transcript

1 ΤΕΧΝΟΛΟΓΙΚΟ ΕΚΠΑΙΔΕΥΤΙΚΟ ΙΔΡΥΜΑ ΚΡΗΤΗΣ ΣΧΟΛΗ ΤΕΧΝΟΛΟΓΙΚΩΝ ΕΦΑΡΜΟΓΩΝ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ «Σύστημα για Επεξεργασία Λογικών Εκφράσεων» ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ Σπουδαστές: Πατσάκης Νικόλαος ΑΜ: 1757 Παπαδάκης Γεώργιος ΑΜ: 3179 Επιβλέπων Καθηγητής : Παπαδάκης Νικόλαος, Επίκουρος Καθηγητής Ηράκλειο

2 Πίνακας περιεχομένων 1 Περίληψη Abstract Εισαγωγή Λογικές Πύλες Λογικές Προτάσεις Λογικοί Σύνδεσμοι Ιδιότητες Λογικών Συνδέσμων Συνέπεια ( Consistency ) Συνέπεια και Συνεπαγωγή ( Consequence and Entailment ) Εξαγωγή Συμπερασμάτων, Εγκυρότητα, Συνεπαγωγή, Ισοδυναμία ( Inference, Validity, Entailment, Equivalence ) Ισοδυναμία Προτασιακός Λογισμός ( Propositional Calculus ) Δομή Προτάσεων Ισοδυναμίες του Προτασιακού Λογισμού Κανονικές Μορφές ( Normal Forms ) Αλγόριθμος Μετατροπής σε DNF Άρνηση ( Negation ) Συνεπαγωγή στον Προτασιακό Λογισμό Ταυτολογίες και Αντινομίες ( Tautologies and Contradictions ) Ταυτολογίες και Λογική Συνεπαγωγή Συνεπαγωγή και Ισοδυναμία ( Material Implication and Equivalence ) Κανονικές Μορφές Μετατροπή Προτάσεων του Π.Λ. σε DNF Αλγόριθμος Μετατροπής Προτάσεων του Π.Λ. σε DNF

3 12 Η Γλώσσα C Βιβλιογραφία Παράρτημα

4 Πίνακας Εικόνων Εικόνα 1: Σχεδιάγραμμα Πύλης NOT και Πίνακας Αληθείας... 8 Εικόνα 2: Σχεδιάγραμμα Πύλης AND και Πίνακας Αληθείας... 9 Εικόνα 3: Σχεδιάγραμμα Πύλης OR και Πίνακας Αληθείας... 9 Εικόνα 4: Σχεδιάγραμμα Πύλης NAND και Πίνακας Αληθείας Εικόνα 5: Σχεδιάγραμμα Πύλης NOR και Πίνακας Αληθείας Εικόνα 6: Σχεδιάγραμμα Πύλης XOR και Πίνακας Αληθείας Εικόνα 7: Σχεδιάγραμμα Πύλης XNOR και Πίνακας Αληθείας Εικόνα 8: Δημοτικότητα Γλωσσών Εικόνα 9: Hello World - το Πρώτο Πρόγραμμα κάθε Προγραμματιστή! Εικόνα 10: Ιστορική Αναδρομή Γλωσσών Προγραμματισμού

5 1 Περίληψη Η πτυχιακή εργασία μας σχετίζεται με λογικές πράξεις, πύλες και πίνακες αληθείας. Εξετάζουμε τις λογικές πράξεις: της Σύζευξης ( ), της Άρνησης ( ), της Διάζευξης ( ) και της Συνεπαγωγής ( ), οι οποίες μας δίνουν ένα λογικό αποτέλεσμα (0 ή 1). Στον κώδικά μας χρησιμοποιούμε το πολύ πέντε (5) μεταβλητές. Επίσης αναφερόμαστε στον Προτασιακό Λογισμό, στους αλγόριθμους DNF, CNF και στη μετατροπή προτάσεων σε αυτούς. Η γλώσσα προγραμματισμού C έχει πολλές δυνατότητες, γι αυτόν το λόγο έχουμε επιλέξει να γράψουμε τον κώδικάς μας με αυτήν. 5

6 2 Abstract Our thesis relates to logical operations, gates and truth tables. We examine the logical operations of: conjunction ( ), negation ( ), disjunction ( ) and implication ( ), which give us a logical result ( 0 or 1 ). In our code we use a maximum of five (5) variables. Also, refer to propositional calculus, the algorithms DNF, CNF and the conversion of proposals to them. The C programming language has many features, for this reason we have chosen to write down our code with it. 6

7 3 Εισαγωγή Λογικές Πύλες Τα ψηφιακά κυκλώματα αποτελούνται από λογικές πύλες, δηλαδή στοιχειώδη λογικά κυκλώματα τα οποία πραγματοποιούν τις λογικές πράξεις της άλγεβρας Boole, δηλαδή του πολλαπλασιασμού, της πρόσθεσης και του συμπληρώματος. Οι λογικές πύλες είναι λογικά κυκλώματα με πολλές εισόδους αλλά μια έξοδο. Λογικές πράξεις και Δυαδική λογική Πολλές φορές στα μαθηματικά και γενικότερα στις επιστήμες, έχουμε την ανάγκη να χρησιμοποιήσουμε το δυαδικό σύστημα αρίθμησης για τις εφαρμογές που έχουμε να επιλύσουμε. Το δυαδικό σύστημα αρίθμησης περιέχει τους αριθμούς 0 ( λογικό μηδέν ) και 1 ( λογικό ένα ). Υποστηρίζει τις δύο από τις τέσσερις βασικές πράξεις, δηλαδή την πρόσθεση ( Λογικό Ή ( OR ) ) και τον πολλαπλασιασμό ( λογικό ΚΑΙ ( AND ) ). Επίσης ισχύει η έννοια του αντίστροφου αριθμού ( λογικό ΟΧΙ ( NOT ) ) και αυτό σημαίνει ότι το αντίθετο της μίας λογικής κατάστασης ( είτε λογικό 0 είτε λογικό 1 ) είναι η άλλη κατάσταση. Για παράδειγμα, αν έχουμε το λογικό 0 μετά την λογική πράξη ΟΧΙ, το αποτέλεσμα θα είναι το λογικό 1 και αντίστροφα. Έτσι ορίζουμε άλλες δύο λογικές πράξεις ( logical operations ) οι οποίες είναι, η λογική αντίστροφη πρόσθεση ( NOT-OR ( ή συντομογραφικά NOR ) ) και τον λογικό αντίστροφο πολλαπλασιασμό ( NOT-AND ( ή συντομογραφικά NAND ) ). Στο δυαδικό σύστημα ( και στις πράξεις ) ισχύουν τα εξής : Όπου το σύμβολο της πράξης AND Όπου το σύμβολο της πράξης OR Όπου το σύμβολο της πράξης NOT 0 0 = = 0 0 = = = 1 1 = = = 1 7

8 Στην δυαδική λογική, υπάρχουν δύο θεωρήματα που τα απέδειξε ο μαθηματικός Augustus de Morgan τα οποία είναι τα εξής ( όπου εκφράζει την λογική πράξη NOT ( ΟΧΙ ) ) : a) ( x y ) = x y b) ( x y ) = x y Έτσι, συνδυάζοντας τις τρείς βασικές λογικές πράξεις ( NOT, AND, OR ) με τα θεωρήματα de Morgan, μπορούμε να εισάγουμε και να ορίσουμε τις δύο τελευταίες λογικές πράξεις. Την αποκλειστική πρόσθεση ( exclusive-or ( ή συντομογραφικά XOR ) ) και την αντίστροφη αποκλειστική πρόσθεση ( not exclusive-or (ή συντομογραφικά XNOR ) ). Τέλος πρέπει να αναφέρουμε ότι η προτεραιότητα των πράξεων στο δυαδικό σύστημα είναι η εξής : a) Λογικό ΟΧΙ ( NOT ) b) Λογικό ΚΑΙ ( AND ) c) Λογικό Ή ( OR ). [ 1 ] Οι κύριες πύλες είναι οι εξής : Λογικό ΟΧΙ ( NOT ) : Η πρώτη λογική πράξη είναι η πράξη της αντιστροφής. Την εκφράζουμε με την λογική πύλη NOT και με αυτή μπορούμε να αντιστρέψουμε το αποτέλεσμα της εξόδου. Δηλαδή το λογικό 1 να το κάνουμε λογικό 0 και αντίστροφα. Παρακάτω βλέπουμε ότι η λογική πύλη έχει μία είσοδο ( στην οποία εισάγουμε δυαδικό αριθμό ( 0 ή 1 ) ) και στην έξοδο παίρνουμε το αντίστροφο από αυτό που εισάγουμε. Εικόνα 1: Σχεδιάγραμμα Πύλης NOT και Πίνακας Αληθείας 8

9 Λογική Πύλη AND ( ΚΑΙ ) : Με την πύλη AND ( ΚΑΙ ) πραγματοποιούμε τη λογική πράξη του πολλαπλασιασμού δύο ή περισσότερων μεταβλητών και εκφράζεται με την συνάρτηση : Output = Α Β. Όπου Output είναι η έξοδος και Α, Β είναι οι είσοδοι. Εικόνα 2: Σχεδιάγραμμα Πύλης AND και Πίνακας Αληθείας Λογική πύλη OR ( Ή ) : Με την πύλη OR ( Ή ) πραγματοποιούμε τη λογική πράξη της πρόσθεσης και εκφράζεται από την συνάρτηση : Χ = Α + Β Εικόνα 3: Σχεδιάγραμμα Πύλης OR και Πίνακας Αληθείας 9

10 Οι συμπληρωματικές πύλες είναι οι εξής : Λογική πύλη NAND ( NOT AND ) : Η λογική πύλη NAND είναι το συμπλήρωμα της λογικής πύλης AND. Μπορούμε να την δημιουργήσουμε εάν συνδέσουμε σε σειρά, μια πύλη AND και μια πύλη NOT. Την συμβολίζουμε όπως την πύλη AND με έναν κύκλο στο άκρο της, που δηλώνει την άρνηση. Η λογική συνάρτηση της πύλης NAND είναι : Output = ( Α Β ) Εικόνα 4: Σχεδιάγραμμα Πύλης NAND και Πίνακας Αληθείας Λογική πράξη NOR ( NOT OR ) : Η λογική πράξη NOR είναι ουσιαστικά η πράξη OR ακολουθούμενη από μια πύλη NOT στην έξοδό της. Πρακτικά όμως και σε αυτή την περίπτωση υπάρχει η πύλη NOR για να ελαχιστοποιήσουμε τις πύλες σε ένα κύκλωμα. 10

11 Εικόνα 5: Σχεδιάγραμμα Πύλης NOR και Πίνακας Αληθείας Αποκλειστικό Ή ( XOR ) : Η λογική πύλη XOR προκύπτει από τον συνδυασμό των λογικών πράξεων AND, OR και NOT. Η λογική συνάρτηση της πύλης XOR είναι : Εικόνα 6: Σχεδιάγραμμα Πύλης XOR και Πίνακας Αληθείας 11

12 Αποκλειστικό NOR ( XNOR ) : Η τελευταία λογική πράξη είναι η αντίστροφη αποκλειστική πρόσθεση. Είναι η αντίθετη λογική πράξη από την XOR και προκύπτει κι αυτή μέσω των τριών βασικών λογικών πυλών AND, OR και NOT. Η λογική συνάρτηση της πύλης XNOR είναι : Εικόνα 7: Σχεδιάγραμμα Πύλης XNOR και Πίνακας Αληθείας Συνοψίζοντας, βλέπουμε ότι με συγκεκριμένα κυκλώματα μπορούμε να υλοποιήσουμε λογικές πράξεις. Όλες οι λογικές πύλες που είδαμε παραπάνω ( εκτός της πύλης NOT ) υπάρχουν και με περισσότερες εισόδους. Είναι σημαντικό να αναφέρουμε ότι οι λογικές πύλες πωλούνται στο εμπόριο σε μορφή ολοκληρωμένων κυκλωμάτων ( integrated circuits ( chips ) ). Παρακάτω βλέπουμε τα βασικότερα ολοκληρωμένα κυκλώματα της σειράς 74 για τις λογικές πύλες που αναφέραμε παραπάνω : 7400 Τέσσερις λογικές πύλες NAND 2 εισόδων Τέσσερις λογικές πύλες NOR 2 εισόδων Έξι λογικές πύλες NOT Τέσσερις λογικές πύλες AND 2 εισόδων Τέσσερις λογικές πύλες OR 2 εισόδων Τέσσερις λογικές πύλες XOR 2 εισόδων Τέσσερις λογικές πύλες XNOR 2 εισόδων. 12

13 Τα ολοκληρωμένα κυκλώματα ποτέ δεν περιέχουν μία μόνο λογική πύλη. Συνήθως περιέχουν τρείς ή τέσσερις πύλες, ή στην περίπτωση που έχουμε πύλη πολλών εισόδων μπορεί να περιέχουν και μόνο μία. Ενδεικτική περίπτωση ολοκληρωμένου κυκλώματος που περιέχει μόνο μία λογική πύλη, είναι το ολοκληρωμένο κύκλωμα με κωδικό 74LS30 που περιέχει μία πύλη NAND 8 εισόδων. Επειδή ο τρόπος συνδεσμολογίας του κάθε ολοκληρωμένου κυκλώματος διαφέρει, γι αυτό τον λόγο υπάρχουν τα λεγόμενα φύλλα δεδομένων ( data sheets ). Αυτά μπορούμε να τα βρούμε πολύ εύκολα στο διαδίκτυο, πληκτρολογώντας απλά τον κωδικό του ολοκληρωμένου κυκλώματος που θέλουμε να χρησιμοποιήσουμε. [ 1 ] 13

14 4 Λογικές Προτάσεις Μια λογική πρόταση είναι μια γλωσσική έκφραση η οποία μπορεί να χαρακτηριστεί ως αληθής ή ως ψευδής. Υπάρχουν προτάσεις οι οποίες δεν είναι λογικές προτάσεις. Τέτοιες, για παράδειγμα, είναι : a) οι Ερωτηματικές προτάσεις b) οι Προσταγές ή Ευχετικές προτάσεις c) Μια πρόταση μπορεί να μην είναι λογική πρόταση επειδή κάποιες από τις λέξεις δεν έχουν ακριβή σημασιολογία. Π.χ., η πρόταση «ο Χ είναι φοιτητής του τμήματος». Η πρόταση μπορεί να χαρακτηριστεί ως αληθής ή ψευδής αν γνωρίζουμε ποιος είναι ο Χ και ποιο είναι το τμήμα. Απαιτείτε δηλαδή η απόδοση ερμηνείας στους όρους αυτούς. Στη λογική, μας ενδιαφέρουν οι προτάσεις για τις οποίες υπάρχει ερμηνεία που να τις καθιστά αληθείς ή ψευδείς. 14

15 5 Λογικοί Σύνδεσμοι Οι λογικές προτάσεις σχηματίζονται με τη χρήση λογικών συνδέσμων : a) Σύζευξη (conjunction). Συμβολίζεται με το σύμβολο Παράδειγμα: Έστω ότι γνωρίζουμε δύο ιδιότητες ενός ακεραίου αριθμού x: x > 4 και x < 9. Τότε για το x γνωρίζουμε τις προτάσεις A: x > 4 και B: x < 9. Τότε όμως γνωρίζουμε και την πρόταση: ο x είναι μεγαλύτερος του 4 και ( ο x είναι ) μικρότερος του 9, δηλαδή τη σύζευξη των A και B. Έτσι, A Β δηλώνει την πρόταση «x > 4 και x < 9» ( ή όπως γράφεται εν συντομία «4 < x < 9» ). b) Άρνηση (negation). Συμβολίζεται με το σύμβολο Παράδειγμα: Έστω η πρόταση Γ: «το 50 είναι διαιρετό δια 7». Τότε η άρνηση της Γ ( Γ ) είναι η πρόταση «το 50 δεν είναι διαιρετό δια 7». c) Διάζευξη (disjunction). Συμβολίζεται με το σύμβολο Παράδειγμα: Έστω οι προτάσεις Δ: «το 60 είναι πολλαπλάσιο του 6» και Ε: «το 60 είναι πολλαπλάσιο του 5». Τότε η διάζευξή των Δ και Ε είναι η πρόταση Δ Ε : «το 60 είναι πολλαπλάσιο του 6 ή πολλαπλάσιο του 5». Όπως βλέπουμε από το παράδειγμα, η διάζευξη δεν είναι αποκλειστική γιατί το 60 είναι πολλαπλάσιο και του 6 και του 5. d) Συνεπαγωγή (implication). Συμβολίζεται με το σύμβολο Παράδειγμα: Έστω οι προτάσεις Ζ: «ο αριθμός α είναι πολλαπλάσιο του 10» και Η: «ο αριθμός α είναι πολλαπλάσιο του 5». Τότε η πρόταση Ζ Η (αν Ζ, τότε Η) είναι η πρόταση: «αν ο αριθμός α είναι πολλαπλάσιο του 10, τότε ο αριθμός α είναι πολλαπλάσιο του 5». e) Ισοδυναμία (equivalence). Συμβολίζεται με το σύμβολο Παράδειγμα: Έστω οι προτάσεις Θ: «το 16 είναι πολλαπλάσιο του 2» και Κ: «το 16 είναι άρτιος αριθμός». Τότε η πρόταση Θ Κ ( Θ αν και μόνο αν Κ 15

16 ) είναι η πρόταση «το 16 είναι πολλαπλάσιο του 2 αν και μόνο αν το 16 είναι άρτιος αριθμός». 16

17 6 Ιδιότητες Λογικών Συνδέσμων Για τους λογικούς συνδέσμους που ορίσαμε παραπάνω, ισχύουν οι ακόλουθες ιδιότητες: a) Οι σύνδεσμοι και είναι μεταθετικοί, δηλαδή, για οποιεσδήποτε προτάσεις Α και Β, οι προτάσεις Α Β και Α Β είναι ισοδύναμες με τις προτάσεις Β Α και Β Α αντίστοιχα. b) Ο σύνδεσμος δεν είναι μεταθετικός, δηλαδή, η πρόταση Α Β δεν είναι ισοδύναμη με την πρόταση Β Α. Παράδειγμα: Ενώ η πρόταση «αν ο α είναι πολλαπλάσιο του 10, τότε ο α είναι πολλαπλάσιο του 5» είναι λογικά αληθής. Η πρόταση «αν ο α είναι πολλαπλάσιο του 5, τότε ο α είναι πολλαπλάσιο του 10» δεν είναι. Προτάσεις που συντίθενται με χρήση λογικών συνδέσμων μπορεί να είναι αληθείς, ψευδής, ή άλλοτε αληθείς και άλλοτε ψευδείς. Για παράδειγμα: a) η πρόταση «ένας ρητός αριθμός είναι 0 ή διάφορος από το 0» είναι αληθής b) η πρόταση «αν x = 3, τότε x = 5» είναι ψευδής c) η πρόταση «το x ισούται με την απόλυτη τιμή του και το y είναι αρνητικός αριθμός» είναι άλλοτε αληθής και άλλοτε ψευδής. Πρέπει να τυποποιηθεί η απόφαση μιας τιμής αληθείας σε προτάσεις βάσει της τιμής αληθείας των υποπροτάσεών τους. Για παράδειγμα, διαισθητικά γνωρίζουμε ότι η πρόταση «x > 3 x > 0» είναι αληθής. Ποιος κανόνας όμως μας επιτρέπει να το συμπεράνουμε; Πρέπει να εξεταστεί η σύνταξη των προτάσεων αλλά και οι κανόνες που καθορίζουν πότε και πώς μπορούμε να εξάγουμε έγκυρα συμπεράσματα από τα δεδομένα που διαθέτουμε. 17

18 7 Συνέπεια ( Consistency ) Ένα σύνολο, το οποίο περιέχει προτάσεις οι οποίες δεν μπορούν να είναι ταυτόχρονα αληθείς λέγεται ασυνεπές ( inconsistent ). Παραδείγματα: a) Μια απλή περίπτωση, είναι όταν το σύνολο περιέχει προτάσεις οι οποίες αντικρούουν η μία την άλλη: S1 = { x < 5, x 5, S2 = { y = 3, y 3. b) Μια άλλη περίπτωση, είναι όταν το σύνολο περιέχει προτάσεις οι οποίες αντικρούουν η μία την άλλη έμμεσα: S3 = { ο x είναι άρτιος αριθμός μεγαλύτερος του 2, ο x είναι πρώτος αριθμός. Η ασυνέπεια προκύπτει από την ερμηνεία που δίνουμε στους όρους «άρτιος αριθμός» και «πρώτος αριθμός». c) Ασυνέπεια μπορεί να προκύψει από τρεις ή περισσότερες προτάσεις για τις οποίες δεν υπάρχει ζεύγος αντικρουόμενων προτάσεων: S4 = { x > 2, x άρτιος, x πρώτος, S5 = { x > y, y > z, z > x. Εδώ παρατηρούμε ότι αν αφαιρέσουμε οποιαδήποτε πρόταση από τα σύνολα S4 και S5, τα σύνολα δεν είναι πλέον ασυνεπή. Ένα σύνολο προτάσεων λέγεται συνεπές όταν δεν είναι ασυνεπές. Το γεγονός ότι ένα σύνολο είναι συνεπές δε σημαίνει ότι και όλες οι προτάσεις που περιέχονται σε αυτό είναι αληθείς. Σημαίνει ότι ενδέχεται να είναι αληθείς. Για παράδειγμα, το σύνολο S6 = { x > y, y > z είναι συνεπές παρόλο που μπορούμε να βρούμε τιμές για τα x, y, z ώστε τουλάχιστον μια από τις προτάσεις να είναι ψευδής. Ένα σύνολο που περιέχει μόνο μια πρόταση μπορεί επίσης να είναι ασυνεπές. Η πρόταση αυτή δεν μπορεί ποτέ να είναι λογικά αληθής. Για παράδειγμα, το σύνολο S7 = { το 2 είναι διαιρέτης κάθε περιττού αριθμού είναι ασυνεπές. Τέτοιες προτάσεις τις λέμε λογικά ψευδείς ( ή ταυτολογικά ψευδής ). Οποιοδήποτε ασυνεπές σύνολο μπορεί να παράγει μια λογικά ψευδή πρόταση. Αυτό γίνετε σχηματίζοντας τη σύζευξη των μελών του συνόλου. Για παράδειγμα, από το σύνολο S5 = { x > y, y > z, z > x σχηματίζουμε την πρόταση ( x > y ) ( y > z ) ( z > x ) η οποία είναι λογικά ψευδής. 18

19 Μια πρόταση είναι λογικά αληθής αν η άρνησή της είναι λογικά ψευδής. Για παράδειγμα, η πρόταση «ο αριθμός 2 είναι άρτιος» είναι λογικά αληθής μια και η άρνησή της ( «ο αριθμός 2 είναι περιττός» ) είναι λογικά ψευδής. Επίσης, υπάρχουν προτάσεις οι οποίες δεν μπορούν να χαρακτηριστούν ούτε λογικά ψευδείς, ούτε λογικά αληθείς. Αυτές τις ονομάζουμε επαληθεύσιμες ( contingent ). Για παράδειγμα, η πρόταση «ο αριθμός x είναι θετικός» είναι επαληθεύσιμη. 19

20 8 Συνέπεια και Συνεπαγωγή ( Consequence and Entailment ) Θεωρούμε το σύνολο προτάσεων S4 = { p1 : x > 2, p2 : x άρτιος, p3 : x πρώτος. Αν δεχτούμε τις προτάσεις p1 και p2 τότε συμπεραίνουμε την πρόταση p4 : ο x δεν είναι πρώτος, δηλαδή την άρνηση της p3. Αν οι προτάσεις p1 και p2 είναι αληθείς τότε και η p4 πρέπει να είναι αληθής. Σε αυτή την περίπτωση λέμε ότι η p4 συνάγεται από τις p1 και p2, ή ότι είναι συνέπεια των p1 και p2. Εναλλακτικά, λέμε ότι οι p1 και p2 συνεπάγονται την p4, ή ότι μπορούμε να συμπεράνουμε την p4 από τις p1 και p2. Επίσης, από τις p2 και p3 μπορούμε να συμπεράνουμε την πρόταση p5 : x = 2 και από τις p1 και p3 μπορούμε να συμπεράνουμε την πρόταση p6 : x περιττός. 20

21 9 Εξαγωγή Συμπερασμάτων, Εγκυρότητα, Συνεπαγωγή, Ισοδυναμία ( Inference, Validity, Entailment, Equivalence ) Θα εξετάσουμε τη σχέση μεταξύ της εξαγωγής ενός συμπεράσματος και της έννοιας της συνεπαγωγής. Έχουμε ένα σύνολο προτάσεων { p1, p2,, pn, μπορούμε να εξάγουμε ως συμπέρασμα την πρόταση c αν η c είναι συνέπεια των p1, p2,, pn, δηλαδή αν οι p1, p2,, pn συνεπάγονται την c. Η εξαγωγή συμπεράσματος c από υποθέσεις p1, p2,, pn συμβολίζεται ως p1, p2,, pn / c. Εδώ πρέπει να προσέξουμε ότι, συμπεραίνουμε ότι η c είναι αληθής υποθέτοντας ότι οι p1, p2,, pn είναι αληθείς και ότι συνεπάγονται την c. Αν το συμπέρασμα c πράγματι συνάγεται από τις προτάσεις p1, p2,, pn, τότε η εξαγωγή συμπεράσματος ονομάζεται έγκυρη ( valid ). Αν οι p1, p2,, pn και c είναι αληθείς προτάσεις, τότε η εξαγωγή συμπεράσματος ονομάζεται ορθή ( sound ). Για να δηλώσουμε ότι η εξαγωγή συμπεράσματος p1, p2,, pn / c είναι έγκυρη χρησιμοποιούμε το συμβολισμό p1, p2,, pn = c. Συχνά μας ενδιαφέρει η έγκυρη εξαγωγή συμπερασμάτων τα οποία γνωρίζουμε ότι δεν είναι ορθά. Αυτό συμβαίνει όταν ενδιαφερόμαστε για συλλογισμούς του τύπου «αν ο κόσμος ήταν, τότε». Η εξαγωγή συμπεράσματος p1, p2,, pn / c είναι έγκυρη εφόσον δεν είναι δυνατόν για τις p1, p2,, pn να είναι συγχρόνως αληθείς και η c να είναι ψευδής. Είναι ορθή αν είναι έγκυρη και οι p1, p2,, pn, c είναι όλες αληθείς. Παραδείγματα : a) Η εξαγωγή συμπεράσματος p 1 : q > 2 p 2 : q άρτιος c : q μη πρώτος είναι έγκυρη αλλά μη-ορθή. 21

22 b) Η εξαγωγή συμπεράσματος p 1 : 6 > 2 p 2 : 6 άρτιος c : 6 μη πρώτος είναι έγκυρη και ορθή. c) Η εξαγωγή συμπεράσματος p 1 : ο αριθμός 3 είναι πρώτος p 2 : ο αριθμός 5 είναι πρώτος c : όλοι οι περιττοί είναι πρώτοι είναι μη-έγκυρη και μη-ορθή. Από μια έγκυρη συνεπαγωγή p1, p2,, pn = c μπορούμε να εξάγουμε μια λογικά αληθή πρόταση. Αυτό το πετυχαίνουμε με το να σχηματίσουμε την πρόταση p1 p2 pn c. 22

23 10 Ισοδυναμία Αν για δύο προτάσεις Α και Β ισχύει ότι Α = Β και Β = Α, τότε οι προτάσεις Α και Β λέγονται ισοδύναμες. Δύο ισοδύναμες προτάσεις είναι συγχρόνως αληθείς ή συγχρόνως ψευδείς. Η ισοδυναμία των προτάσεων Α και Β συμβολίζεται ως Α Β. Η σχέση Α = Β δεν είναι συμμετρική, δηλαδή δεν ισχύει και Β = Α. Για παράδειγμα, «ο x είναι πολλαπλάσιο του 4 = ο x είναι άρτιος», αλλά «ο x είναι άρτιος ο x είναι πολλαπλάσιο του 4. Για άλλες προτάσεις ισχύει Α = Β αν και μόνο αν Β = Α. Για παράδειγμα, «ο x είναι πολλαπλάσιο του 2 = ο x είναι άρτιος» και «ο x είναι άρτιος = ο x είναι πολλαπλάσιο του 2». 23

24 11 Προτασιακός Λογισμός ( Propositional Calculus ) Ο Προτασιακός Λογισμός ( ΠΛ ) ασχολείται με τη δομή των προτάσεων και τη χρήση τους στην εξαγωγή συμπερασμάτων. Για παράδειγμα, θεωρούμαι την πρόταση s : «ο αριθμός 2 είναι άρτιος και ο αριθμός 3 είναι περιττός». Την s μπορούμε να την θεωρήσουμε ως ερμηνεία της πρότασης «ο Χ είναι Α και ο Υ είναι Β» ή ακόμα και της πρότασης «p και q». Η δομή της πρότασης μπορεί να αναπαρασταθεί ως ένα δέντρο της μορφής : Αν η πρόταση θεωρηθεί ερμηνεία της πρότασης «p και q» τότε περιγράφεται σαν συνδυασμός δύο προτάσεων που συνδέονται με το συνδετικό «και» ( σύζευξη ). Η τιμή αληθείας της s εξαρτάται από τις τιμές αληθείας των p και q. Συνδετικά που χρησιμοποιούμαι για το σχηματισμό προτάσεων και για τα οποία ισχύει ότι η τιμή αληθείας της σύνθετης πρότασης εξαρτάται μόνο από τις τιμές αληθείας των προτάσεων που συντίθενται είναι αυτά που μας ενδιαφέρουν στον Προτασιακό Λογισμό. Αν το συνδετικό «διότι» ή το συνδετικό «ενώ» είχε χρησιμοποιηθεί στη θέση του συνδετικού «και», τότε αυτό δεν θα ίσχυε. 24

25 11.1 Δομή Προτάσεων Η σύζευξη Α Β μπορεί να αναπαρασταθεί ως το δέντρο : Οι Α και Β μπορεί να είναι σύνθετες προτάσεις. Έτσι η πρόταση A ( B C ) αναπαριστάται ως δέντρο : 25

26 Η χρήση των παρενθέσεων είναι απαραίτητη για να αναπαριστάται με ακρίβεια η δομή της πρότασης. Για παράδειγμα, η πρόταση A ( B C ) είναι διαφορετική από την πρόταση ( A B ) C. Η τελευταία αναπαριστάται από το δέντρο : Πρέπει να χρησιμοποιήσουμε τις παρενθέσεις για να καταλάβουμε ποια δομή αντιστοιχεί στην πρόταση A B C. Η πρόταση A ( B C ) είναι μια σύζευξη προτάσεων μία από τις οποίες είναι μια διάζευξη, ενώ η πρόταση ( A B ) C είναι μια διάζευξη προτάσεων μία από τις οποίες είναι μία σύζευξη. Κάθε συνδετικό έχει ένα πεδίο ή ακτίνα ( scope ). Το πεδίο ενός συνδετικού, είναι το σύνολο των κόμβων του δέντρου αναπαράστασης της πρότασης οι οποίοι «κρέμονται» από τον κόμβο του συνδετικού. Για παράδειγμα, το πεδίο του συνδετικού στην πρόταση A ( B C ) είναι το { B, C, ενώ το πεδίο του συνδετικού είναι το { A, B C. Στις προτάσεις μπορούμε να κάνουμε αντικατάσταση ( substitution ) κάποιον συμβόλων με άλλες προτάσεις. Οποιαδήποτε σύζευξη ( ή διάζευξη ) μπορούμε να θεωρήσουμε ότι προέρχεται από την πρότυπη πρόταση p q ( αντίστοιχα p q ) όπου οι p, q αντικαθίστανται από τις κατάλληλες προτάσεις. Για παράδειγμα, η πρόταση ( Α ( B C ) ) ( B D ) προέρχεται από την p q με αντικατάσταση του p με ( Α ( B C ) ) και του q με ( B D ). Συχνά μάλιστα χρησιμοποιούμε τις ίδιες πρότυπες μεταβλητές στην πρότυπη πρόταση και στις εκφράσεις που αντικαθιστούν τις πρότυπες μεταβλητές. Για παράδειγμα, αν στην πρόταση A B 26

27 αντικαταστήσουμε το Α με ( Α ( B C ) ) και το Β με ( B D ) προκύπτει η πρόταση ( Α ( B C ) ) ( B D ). Πρέπει να προσέχουμε με τις αντικαταστάσεις των πρότυπων μεταβλητών γιατί πρέπει να γίνονται συγχρόνως. Αν στο προηγούμενο παράδειγμα οι αντικαταστάσεις γίνουν διαδοχικά, η πρόταση που προκύπτει είναι η Α ( ( B D ) C ) ( B D ) η οποία δεν είναι ισοδύναμη της ( Α ( B C ) ) ( B D ). Την αντικατάσταση του Χ με Υ την συμβολίζουμε ως Χ/Υ. Την ταυτόχρονη αντικατάσταση των Χ1, Χ2,, Χn με Υ1, Υ2,, Υn την συμβολίζουμε ως { Χ1/Υ1, Χ2/Υ2,, Χn/Υn. Αν Ε είναι μια πρόταση του ΠΛ και j μια αντικατάσταση, τότε Εj συμβολίζει την πρόταση που προκύπτει από την εφαρμογή της αντικατάσταση j στην Ε. Για παράδειγμα, αν Ε είναι η πρόταση Α Β και j = { Α / Α (B C), B / B D, τότε Ej είναι η πρόταση ( A ( B C ) ) ( B D ). Για να επιστρέψουμε στην αναπαράσταση της δομής των προτάσεων ως δέντρα, το βάθος μια δομής είναι το μήκος του μακρύτερου μονοπατιού από τη ρίζα του δέντρου ως τα φύλλα. Το βάθος στο οποίο μία υποπρόταση παρουσιάζεται μέσα στη δομή μιας πρότασης ορίζεται ως το μήκος του μονοπατιού από τον κόμβο του κύριου συνδετικού της υποπρότασης στην ρίζα της πρότασης. Παραδείγματα : Το βάθος της πρότασης Α είναι 0. Το βάθος της πρότασης Α Β είναι 1. Το βάθος της πρότασης Α ( Β C ) είναι 2. Το βάθος της πρότασης Α ( ( Β ( C D ) ) Ε είναι 4. Η πρόταση C D εμφανίζεται σε βάθος 3 στην πρόταση Α ( ( Β ( C D ) ) Ε, ενώ η πρόταση Ε εμφανίζεται σε βάθος 2. 27

28 11.2 Ισοδυναμίες του Προτασιακού Λογισμού Παρακάτω θα δούμε μερικές από τις βασικές ισοδυναμίες του ΠΛ για προτάσεις που χρησιμοποιούν τα συνδετικά και : 1.1 Α Β Β Α ( μεταθετικότητα του ) 1.2 Α Β Β Α ( μεταθετικότητα του ) 1.3 ( A Β ) C A ( Β C ) ( προσεταιριστικότητα του ) 1.4 ( Α Β ) C A ( B C ) ( προσεταιριστικότητα του ) 1.5 A A A ( αυτοπάθεια του ) 1.6 A A A ( αυτοπάθεια του ) 1.7 Α ( Β C ) ( A B ) ( A C ) ( επιμερισμός του πάνω στο ) 1.8 Α ( Β C ) ( A B ) ( A C ) ( επιμερισμός του πάνω στο ) 1.9 A ( A B ) A ( απορρόφηση του ) 1.10 A ( A B ) A ( απορρόφηση του ) Οι ισοδυναμίες αυτές μπορούν να επαληθευτούν με χρήση πινάκων αληθείας. Για παράδειγμα, ο πίνακας αληθείας της ισοδυναμίας ( 1.7 ) είναι ο ακόλουθος : Α Β C B C Α (B C) Α Β Α C (Α Β) (Α C) α α α α α α α α α α ψ α α α ψ α α ψ α α α ψ α α α ψ ψ ψ ψ ψ ψ ψ ψ α α α ψ ψ ψ ψ ψ α ψ α ψ ψ ψ ψ ψ ψ α α ψ ψ ψ ψ ψ ψ ψ ψ ψ ψ ψ ψ Με παρόμοιο τρόπο μπορούμε να επαληθεύσουμε και τις υπόλοιπες ισοδυναμίες. 28

29 11.3 Κανονικές Μορφές ( Normal Forms ) Οποιαδήποτε πρόταση χρησιμοποιεί μόνο και, είναι ισοδύναμη με μια σύζευξη διαζεύξεων και μια διάζευξη συζεύξεων. Αυτές οι προτάσεις αντιστοιχούν στην συζευκτική κανονική μορφή ( conjunctive normal form ) και στην διαζευκτική κανονική μορφή ( disjunctive normal form ) αντίστοιχα. Παρακάτω υπάρχουν κάποιοι ορισμοί που χρειαζόμαστε για να ορίσουμε τις παραπάνω μορφές. a) Ένα γράμμα ( literal ) είναι οποιαδήποτε πρότυπη μεταβλητή. Ένας ελάχιστος όρος ( minterm ) είναι ένα γράμμα ή η σύζευξη γραμμάτων. Ένας μέγιστος όρος ( maxterm ) είναι ένα γράμμα ή η διάζευξη γραμμάτων. Για παράδειγμα, το Α είναι γράμμα και συγχρόνως μέγιστος και ελάχιστος όρος. Το A B C είναι ελάχιστος όρος ενώ το A Α δεν είναι. Το Α Β είναι μέγιστος όρος ενώ το Α Α δεν είναι. b) Ένας ελάχιστος ( μέγιστος ) όρος Μ1 απορροφά έναν άλλο ελάχιστο ( μέγιστο ) όρο Μ2, αν κάθε γράμμα του Μ1 είναι επίσης στο Μ2. Για παράδειγμα, κάθε μέγιστος ( ελάχιστος ) όρος απορροφά τον εαυτό του. Το Α απορροφά το Α C και το Α C απορροφά το Α Β C. c) Μια πρόταση είναι σε Διαζευκτική Κανονική Μορφή ( DNF ) αν είναι μια διάζευξη από ελάχιστους όρους, κανένας από τους οποίους δεν απορροφά κανέναν άλλο. Μια πρόταση είναι σε Συζευκτική Κανονική Μορφή ( CNF ) αν είναι μια σύζευξη από μέγιστους όρους, κανένας από τους οποίους δεν απορροφά κανένα άλλο. Παραδείγματα : Η πρόταση ( A B ) ( A D E ) C είναι σε DNF. Η πρόταση ( A B ) ( A Β C ) D δεν είναι σε DNF. Η πρόταση A Β C είναι σε DNF και σε CNF. Η πρόταση A Β C είναι σε DNF και σε CNF. Οι προτάσεις Α, Β, Α Β, Α Β είναι σε DNF και σε CNF. Η πρόταση A ( Β C ) είναι σε DNF αλλά όχι σε CNF. 29

30 11.4 Αλγόριθμος Μετατροπής σε DNF Παρακάτω θα δούμε τα βήματα του αλγορίθμου μετατροπής σε DNF. Σαν είσοδο θα πάρουμε μια πρόταση του ΠΛ που χρησιμοποιεί μόνο τους συνδέσμους της σύζευξης ( ) και της διάζευξης ( ). Σαν έξοδο θα πάρουμε την πρόταση σε DNF. a) Για αρχή αφαιρούμε τις μη-απαραίτητες παρενθέσεις ( Για παράδειγμα, η πρόταση ( Α Β ) C γράφεται ως Α Β C ). b) Στη συνέχεια βρίσκουμε τη σύζευξη ( ) η οποία βρίσκεται σε μεγαλύτερο βάθος και η οποία περιέχει τουλάχιστον μια διάζευξη ( ). Αν δεν υπάρχει τέτοια υποπρόταση, προχωράμε στο βήμα ( c ). c) Στη σύζευξη που επιλέγουμε στο βήμα ( a ), εφαρμόζουμε την επιμεριστικότητα της σύζευξης ( ισοδυναμία 1.7 ) και αφαιρούμε τις περιττές παρενθέσεις. Στη συνέχεια επιστρέφουμε στο βήμα ( a ). d) Απλοποιούμε κάθε σύζευξη όσο γίνεται χρησιμοποιώντας την ισοδυναμία της αυτοπάθειας ( ισοδυναμία 1.9 ). e) Αν δεν υπάρχουν συζεύξεις που χρησιμοποιούν τα ίδια γράμματα, κρατάμε μόνο μία από αυτές. f) Τέλος, παραλείπουμε κάθε σύζευξη η οποία περιέχει όλα τα γράμματα μιας άλλης σύζευξης ( δηλαδή απορροφάται από μια άλλη σύζευξη ). Παράδειγμα : Ας εφαρμόσουμε τον αλγόριθμο στην πρόταση ( A B ) ( ( B ( C ( ( C D ) A ) ) ) C ) Η πρόταση δεν περιέχει μη-απαραίτητες παρενθέσεις. Στο βήμα ( a ), επιλέγουμε την σύζευξη ( C D ) A σαν αυτή που βρίσκεται σε μεγαλύτερο βάθος και περιέχει τουλάχιστον μια διάζευξη. Στο βήμα ( b ), εφαρμόζουμε την ισοδυναμία 1.7, από την οποία προκύπτει η πρόταση ( A B ) ( ( B ( C ( C A ) ( D A ) ) ) C ) Στην επόμενη επανάληψη, επιλέγουμε την πρόταση B ( C ( C A ) ( D A ) ) σαν αυτή που βρίσκεται σε μεγαλύτερο βάθος και περιέχει τουλάχιστον μια διάζευξη. Στο βήμα ( b ), εφαρμόζουμε την ισοδυναμία 1.7, από την οποία προκύπτει η πρόταση ( A B ) ( ( B C ) ( B C A ) ( B D A ) C ) 30

31 Στην επόμενη επανάληψη, επιλέγουμε ολόκληρη την πρόταση σαν αυτή που βρίσκεται σε μεγαλύτερο βάθος και περιέχει τουλάχιστον μια διάζευξη. Στο βήμα ( b ), εφαρμόζουμε την ισοδυναμία 1.7, από την οποία προκύπτει η πρόταση ( A B C ) ( Α B C A ) ( Α B D A ) ( Α C ) ( B B C ) ( B B C A ) ( B B D A ) ( B C ) Στο βήμα ( c ), απλοποιούμε τις συζεύξεις που προέκυψαν από τα προηγούμενα βήματα. Το αποτέλεσμα είναι η πρόταση : ( A B C ) ( Α B C ) ( Α B D ) ( Α C ) ( B C ) ( B C A ) ( B D A ) ( B C ) Από το βήμα ( d ) προκύπτει η πρόταση : ( A B C ) ( Α B D ) ( Α C ) ( B C ) Τέλος, από το βήμα ( e ) η πρόταση στην τελική της μορφή είναι η S : ( Α B D ) ( Α C ) ( B C ) Μπορούμε να επιβεβαιώσουμε την ισοδυναμία της αρχικής πρότασης και της πρότασης που προκύπτει από την εφαρμογή του αλγορίθμου DNF, με την κατασκευή πινάκων αληθείας για τις δύο προτάσεις. Η κατασκευή του πίνακα αληθείας για την DNF μορφή της πρότασης, είναι πολύ απλούστερη από την αντίστοιχη κατασκευή πίνακα αληθείας για την αρχική πρόταση : A B C D A B D A C B C S α α α α α α α α α α α ψ ψ α α α α α ψ α α ψ ψ α α α ψ ψ ψ ψ ψ ψ α ψ α α ψ α ψ α α ψ α ψ ψ α ψ α α ψ ψ α ψ ψ ψ ψ α ψ ψ ψ ψ ψ ψ ψ ψ α α α ψ ψ α α ψ α α ψ ψ ψ α α ψ α ψ α ψ ψ ψ ψ ψ α ψ ψ ψ ψ ψ ψ 31

32 ψ ψ α α ψ ψ ψ ψ ψ ψ α ψ ψ ψ ψ ψ ψ ψ ψ α ψ ψ ψ ψ ψ ψ ψ ψ ψ ψ ψ ψ Κάθε σύζευξη της S αντιστοιχεί σε ένα σύνολο γραμμών του πίνακα. Μετατροπή προτάσεων σε CNF : Η μετατροπή γίνεται αν στον αλγόριθμο αντικαταστήσουμε την «σύζευξη» με την «διάζευξη» και αντίστροφα. Οι CNF και DNF μορφές είναι δυικές ( dual ) μορφές. Αν σε μία ισοδυναμία αντικαταστήσουμε την «σύζευξη» με την «διάζευξη» και αντίστροφα, η ισοδυναμία παραμένει. Για παράδειγμα, γνωρίζουμε ότι ισχύει η ισοδυναμία A ( B C ) ( A B ) ( A C ). Αν αντικαταστήσουμε με και αντίστροφα, προκύπτει η ισοδυναμία A ( B C ) ( A B ) ( A C ) η οποία επίσης ισχύει. 32

33 11.5 Άρνηση ( Negation ) Όπως έχουμε ήδη δει, για οποιαδήποτε πρόταση του ΠΛ η οποία χρησιμοποιεί τα συνδετικά της σύζευξης ( ) και της διάζευξης ( ), μπορούμε να κατασκευάσουμε ένα πίνακα αληθείας. Το αντίστροφο μπορεί να γίνει. Δηλαδή αν μας δίνεται ένας πίνακας αληθείας, μπορούμε να κατασκευάσουμε μια πρόταση που αντιστοιχεί σε αυτόν. Για παράδειγμα, θεωρούμε τον παρακάτω πίνακα αληθείας : Α Β C Q α α α α α α ψ ψ α ψ α α α ψ ψ ψ ψ α α α ψ α ψ ψ ψ ψ α ψ ψ ψ ψ ψ Η Q είναι αληθής όταν η A C ή B C είναι αληθής. Η Q θα μπορούσε να είναι η πρόταση ( A C ) ( B C ) ή ( Α Β ) C. Υπάρχουν κάποιοι πίνακες αληθείας από τους οποίους δεν μπορούμε να βρούμε κάποια πρόταση που να χρησιμοποιεί μόνο τα συνδετικά και. Για παράδειγμα, για τον παρακάτω πίνακα αληθείας δεν υπάρχει τέτοια πρόταση. A B Q α α ψ α ψ ψ ψ α ψ ψ ψ α Για να βρούμε την πρόταση του παραπάνω πίνακα χρειαζόμαστε ένα καινούργιο συνδετικό, αυτό της άρνησης ( ). 33

34 Ο πίνακας αληθείας της Άρνησης είναι ο παρακάτω : Α α ψ Α ψ α Τώρα μπορούμε να εκφράσουμε την πρόταση Q του παρακάτω πίνακα : A B Q α α ψ α ψ ψ ψ α ψ ψ ψ α Η Q είναι Α Β. Από κάθε πίνακα αληθείας μπορούμε να κατασκευάσουμε μια πρόταση χρησιμοποιώντας τα συνδετικά, και. Βασικές Ισοδυναμίες : a) Α Α ( απαλοιφή διπλής άρνησης ) b) ( Α Β ) Α Β ( νόμος De Morgan ) c) ( Α Β ) Α Β ( νόμος De Morgan ) d) Α Β ( Α Β ) ( Α Β ) ( αποκλειστική διάζευξη ) Από την ισοδυναμία b) προκύπτει ότι ( Α Β ) ( Α Β ) και από την α) έχουμε : ( Α Β ) ( Α Β ). Άρα τη σύζευξη μπορούμε να την ορίσουμε χρησιμοποιώντας και. Ανάλογα από την c) έχουμε : ( Α Β ) ( Α Β ) και από την α) έχουμε : ( Α Β ) ( Α Β ). Άρα τη διάζευξη μπορούμε να την ορίσουμε χρησιμοποιώντας και. 34

35 Προτάσεις που περιλαμβάνουν άρνηση μπορούμε να τις αναπαραστήσουμε με δέντρα. Παράδειγμα : την πρόταση ( Α Β ) C μπορούμε να την αναπαραστήσουμε από το ακόλουθο δέντρο : 35

36 11.6 Συνεπαγωγή στον Προτασιακό Λογισμό Όπως έχουμε δει, μια πρόταση Α συνάγεται από ένα σύνολο προτάσεων Σ αν κάθε ερμηνεία που ικανοποιεί τις προτάσεις του Σ ικανοποιεί και την Α. Με την βοήθεια πινάκων αληθείας, θα δείξουμε ότι { Α Β, Α = Β. Κάθε γραμμή ενός πίνακα είναι και μια ερμηνεία. Α Β Α Β Α Β α α α ψ α α ψ α ψ ψ ψ α α α α ψ ψ ψ α ψ Από τον πίνακα βλέπουμε ότι κάθε ερμηνεία που ικανοποιεί τις Α Β και Α ικανοποιεί και την Β. Επομένως ισχύει η { Α Β, Α = Β. Με τον ίδιο τρόπο μπορούμε να εξετάσουμε την { Α Β, Α = Β. Α Β Α Β Α Β α α α α ψ α ψ α α α ψ α α ψ ψ ψ ψ ψ ψ α Υπάρχει η ερμηνεία που καθιστά αληθείς τις υποθέσεις αλλά ψευδές το συμπέρασμα. Άρα η εξαγωγή συμπεράσματος δεν είναι έγκυρη. 36

37 11.7 Ταυτολογίες και Αντινομίες ( Tautologies and Contradictions ) Με την εισαγωγή του συνδετικού της άρνησης, μπορούμε να κατασκευάσουμε προτάσεις οι οποίες είναι λογικά αληθείς ή λογικά ψευδής. Οι απλούστερες τέτοιες προτάσεις είναι οι : Α Α Α Α Ο πίνακας αληθείας τους είναι ο εξής : Α Α Α Α Α Α α ψ α ψ ψ α α ψ Η πρόταση Α Α είναι αληθής για κάθε ερμηνεία του Α ενώ η πρόταση Α Α είναι ψευδής. Άρα και οι δύο είναι ανεξάρτητες από τις ερμηνείες του Α. Μια ταυτολογία είναι μια πρόταση η οποία ικανοποιείται από κάθε ερμηνεία. Μια αντινομία είναι μια πρόταση την οποία κάθε ερμηνεία καθιστά ψευδή. Παραδείγματα : a) Η πρόταση S: Α ( Α Β ) ( Α Β ) είναι ταυτολογία. Α ( Α Β ) ( Α Β ) Α ( Α ( Β Β ) ( Α Α ) ( Α ( Β Β ) ) Οι προτάσεις ( Α Α ) και ( Β Β ) είναι ταυτολογίες. Άρα η S είναι ισοδύναμη με μια σύζευξη δύο προτάσεων, από τις οποίες η πρώτη είναι ταυτολογία και η δεύτερη είναι μια διάζευξη μιας ταυτολογίας με την πρόταση Α. Άρα η S είναι πάντα αληθής. 37

38 b) Η πρόταση S : Α Β ( Α Β ) είναι αντινομία. Α Β ( Α Β ) Α ( ( Β Α ) ( Β Β ) ) ( ( Α Α ) Β ) ( Α ( Β Β ) ) Οι προτάσεις ( Α Α ) και ( Β Β ) και επομένως οι συζεύξεις στις οποίες εμφανίζονται είναι πάντα ψευδείς. Άρα και η S είναι πάντα ψευδής. 38

39 11.8 Ταυτολογίες και Λογική Συνεπαγωγή Μία εξαγωγή συμπεράσματος p1, p2,, pn / c, όπου c είναι ταυτολογία, είναι έγκυρη. Γιατί αν δεν ήταν θα έπρεπε να υπάρχει μια ερμηνεία για την οποία οι προτάσεις p1, p2,, pn να είναι αληθείς και η c ψευδής. Αλλά η c είναι ταυτολογία, επομένως πάντα αληθής. Άρα η εξαγωγή συμπεράσματος είναι έγκυρη. Για να δηλώσουμε ότι η c είναι ταυτολογία γράφουμε = c ενώ για να δηλώσουμε ότι είναι αντινομία γράφουμε = c. Αν σε κάποια εξαγωγή συμπεράσματος, κάποια από τις υποθέσεις είναι αντινομία, τότε η εξαγωγή συμπεράσματος είναι έγκυρη. Το συμπέρασμα είναι ότι από μια αντινομία μπορούμε να συμπεράνουμε οποιαδήποτε πρόταση. Ας υποθέσουμε ότι το σύνολο { p1, p2,, pn είναι μη-ικανοποιήσιμο. Τότε η πρόταση p1 p2 pn είναι αντινομία και η πρόταση p1, p2,, pn / c είναι έγκυρη. Προτάσεις που δεν είναι ούτε ταυτολογίες ούτε αντινομίες τις ονομάζουμε ικανοποιήσιμες. Οι ταυτολογίες και οι αντινομίες μας επιτρέπουν να ορίσουμε νέους κανόνες απορρόφησης. Έστω ότι το σύμβολο Τα συμβολίζει μια ταυτολογία ενώ το σύμβολο F συμβολίζει μια αντινομία. Τότε, αν η S είναι μια οποιαδήποτε πρόταση, ισχύουν οι παρακάτω ισοδυναμίες : S T S S F F S T T S F S Παράδειγμα : Θεωρούμε τον παρακάτω πίνακα αληθείας μιας πρότασης Q και ψάχνουμε να βρούμε μια πρόταση η οποία να περιγράφει την Q. 39

40 Α Β C Q 1 α α α ψ 2 α α ψ ψ 3 α ψ α α 4 α ψ ψ ψ 5 ψ α α α 6 ψ α ψ α 7 ψ ψ α α 8 ψ ψ ψ ψ Για κάθε ερμηνεία που καθιστά την Q αληθή, μπορούμε να κατασκευάσουμε μια πρόταση που χρησιμοποιεί τα A, B, C. Έτσι για τις γραμμές 3, 5, 6, 7 του παραπάνω πίνακα θα έχουμε τις προτάσεις A B C, A B C, A B C, A B C αντίστοιχα. Άρα : Q ( A B C ) ( A B C ) ( A B C ) ( A B C ) ( A B C ) ( ( A B ) ( C C ) ) ( A B C ) ( A B C ) ( ( A B ) T ) ( A B C ) ( A B C ) ( A B C ) ( A B ) ( ( A A ) ( B C ) ) ( A B ) ( T ( B C ) ) ( A B ) ( B C ) ( A B ) 40

41 11.9 Συνεπαγωγή και Ισοδυναμία ( Material Implication and Equivalence ) Τα σύμβολα = και τα χρησιμοποιούμε για να δηλώσουμε ότι μια πρόταση του Π.Λ. είναι συνεπαγωγή ενός συνόλου προτάσεων και για να δηλώσουμε ότι δύο προτάσεις είναι ισοδύναμες αντίστοιχα. Οι εκφράσεις p1 p2 pn = Α και Α Β δεν είναι προτάσεις του Π.Λ. Είναι προτάσεις για τον Π.Λ. Δεν υπάρχει τρόπος να δηλώσουμε ότι ένα σύνολο προτάσεων συνεπάγεται μια άλλη πρόταση γράφοντας μια πρόταση του Π.Λ. Δηλαδή δεν υπάρχει το ανάλογο του Α = Β. Υπάρχουν όμως προτάσεις που σε πολλές περιπτώσεις είναι ισοδύναμες. Θεωρούμε την πρόταση Χ Υ, με τον παρακάτω πίνακα αληθείας : X Y X Y α α α α ψ ψ ψ α α ψ ψ α Άρα η πρόταση Χ Υ είναι ψευδής μόνο όταν η Χ είναι αληθής και η Υ είναι ψευδής. Υποθέτουμε ότι Χ = Υ, άρα δεν μπορεί να ισχύει ότι η Χ είναι αληθής και η Υ είναι ψευδής. Παράδειγμα : αν η Χ είναι η πρόταση ( Α Β ) και η Υ είναι η πρόταση Α, τότε η πρόταση ( Α Β ) Α έχει τον εξής πίνακα αληθείας : Α Β ( A B) A ( A B) A α α ψ ψ α α ψ ψ ψ α ψ α ψ α α ψ ψ α α α Άρα αν Χ = Υ, τότε = Χ Υ, δηλαδή η Χ Υ είναι ταυτολογία. 41

42 Αν δεν γνωρίζουμε ότι Χ = Υ αλλά ανακαλύψουμε ότι η Χ Υ είναι ταυτολογία, τότε αυτό σημαίνει ότι δεν υπάρχει ερμηνεία που να καθιστά αυτή την πρόταση ψευδή. Αν υπήρχε, θα έπρεπε να καθιστά την Χ ψευδή και την Υ επίσης ψευδή, δηλαδή την Χ αληθή και την Υ ψευδή. Άρα για κάθε ερμηνεία για την οποία η Υ είναι αληθής είναι και η Υ αληθής, οπότε Χ = Υ. Από τα παραπάνω συμπεραίνουμε ότι Χ = Υ αν και μόνο αν = Χ Υ. Τον συνδυασμό των συνδετικών, στην πρόταση Χ Υ τον αναπαριστάμε με το σύμβολο, το οποίο ονομάζεται συνεπαγωγή ( material implication ). Η συνεπαγωγή έχει τον εξής πίνακα αληθείας : X Y X Y α α α α ψ ψ ψ α α ψ ψ α Την πρόταση Χ Υ την διαβάζουμε ως «αν Χ τότε Υ» ή «Χ μόνο αν Υ» ή «Υ αν Χ». Την Χ την λέμε υπόθεση ( antecedent ) και την Υ την λέμε συμπέρασμα ( consequent ). Όσον αφορά την περίπτωση της λογικής ισοδυναμίας, υπάρχει πρόταση του Π.Λ. που να εκφράζει το Α Β. Η πρόταση ( Α Β ) ( Α Β ) είναι αληθής όταν η Α και η Β έχουν την ίδια τιμή αληθείας. Άρα Α Β αν και μόνο αν = ( Α Β ) ( Α Β ), όπως βλέπουμε και στον παρακάτω πίνακα αληθείας : Α Β Α Β A B A B ( A B) ( A B) α α ψ ψ α ψ α α ψ ψ α ψ ψ ψ ψ α α ψ ψ ψ ψ ψ ψ α α ψ α α 42

43 Άρα η πρόταση ( Α Β ) ( Α Β ) σχετίζεται με την Α Β με τον ίδιο τρόπο που η Α Β σχετίζεται με την Α = Β. Την πρόταση ( Α Β ) ( Α Β ), την γράφουμε ως Α Β και το σύμβολο το λέμε ισοδυναμία. Ο πίνακας αληθείας της ισοδυναμίας είναι ο παρακάτω : X Y X Y α α α α ψ ψ ψ α ψ ψ ψ α Το συμπέρασμα που βγάζουμε είναι ότι : Μια ερμηνεία ικανοποιεί την Α Β αν και μόνο αν δεν ικανοποιεί την Α ή ικανοποιεί τις Α και Β. Μια ερμηνεία ικανοποιεί την Α Β αν και μόνο αν ή ικανοποιεί τις Α και Β ή καθιστά και τις δύο ψευδής. 43

44 11.10 Κανονικές Μορφές Στους αρχικούς ορισμούς των κανονικών μορφών CNF και DNF, χρησιμοποιήσαμε προτάσεις μόνο με το συνδετικό της άρνησης ( ). Στους νέους ορισμούς των κανονικών μορφών θα επιβάλλουμε την απαίτηση το πεδίο του συμβόλου της άρνησης να είναι όσο το δυνατόν μικρότερο. Βάσει αυτής της απαίτησης, μια πρόταση της μορφής ( A B C ) δεν θα μπορεί να συμμετέχει σε κάποια κανονική μορφή, αλλά η ισοδύναμή της πρόταση Α Β C θα μπορεί. Απαραίτητοι ορισμοί : Ένα γράμμα είναι μια πρότυπη μεταβλητή ή η άρνηση μιας πρότυπης μεταβλητής. Ένας ελάχιστος όρος είναι ένα γράμμα ή η σύζευξη γραμμάτων από τα οποία κανένα δεν είναι η άρνηση κάποιου άλλου ή ένα από τα σύμβολα F και T. Ένας ελάχιστος όρος Μ1 απορροφά έναν ελάχιστο όρο Μ2 αν κάθε γράμμα του Μ1 είναι στον Μ2. Κάθε ελάχιστος όρος απορροφά το F και απορροφάται από το T. Δύο ελάχιστοι όροι Μ1, Μ2 συνενώνονται σε έναν ελάχιστο όρο Μ3, αν οι Μ1, Μ2 περιέχουν όλα τα γράμματα του Μ3 και ένα επιπλέον γράμμα το οποίο, στον ένα όρο είναι η άρνηση του επιπλέον γράμματος στον άλλο όρο. Κάθε γράμμα και η άρνησή του συνενώνονται στον όρο T. Μια πρόταση είναι σε DNF, αν είναι μια διάζευξη ελαχίστων όρων, κανένας από τους οποίους δεν απορροφά ή δεν συνενώνεται με κανέναν άλλο. Παραδείγματα : Γράμματα : Α, Α, Β, Β Ελάχιστοι όροι : Α, Α, Α Β, F, T, όχι όμως Α Β Β Απορρόφηση : ο κάθε ένας από τους παρακάτω όρους απορροφά όλους τους επόμενους : T, A, A C, A B C, F. Συνένωση : οι όροι A B C D και A B C D συνενώνονται στον όρο A B D. 44

45 Προτάσεις σε DNF : οι προτάσεις (A B ) ( B C D ) ( Α D ), T, F είναι σε DNF. Οι προτάσεις (A B ) ( Α B C ) ( B C D ), (A B C ) ( Α B C ) ( Α B C ), Α F, B T δεν είναι σε DNF. Μπορούν να υπάρχουν ισοδύναμες προτάσεις σε DNF που να περιέχουν διαφορετικούς ελάχιστους όρους. Για παράδειγμα, η πρόταση (A B C ) ( Α B C ) ( Α B C ) δεν είναι σε DNF. Αν συνενώσουμε το πρώτο με το δεύτερο όρο, προκύπτει η πρόταση ( Α B ) ( Α B C ) ενώ αν συνενώσουμε τον πρώτο με τον τρίτο όρο, προκύπτει η πρόταση ( Α C ) ( Α B C ). Οι δύο προτάσεις είναι ισοδύναμες αλλά περιέχουν διαφορετικούς ελάχιστους όρους. Τις προτάσεις T και F τις κατατάσσουμε στους ελάχιστους όρους, ώστε τις ταυτολογίες και τις αντινομίες να μπορούμε να τις εκφράσουμε σε DNF. Αν οι T και F δεν συμπεριλαμβάνονταν, τότε οι προτάσεις Α Α, A B B, A D D θα ήταν όλες σε DNF και όλες ισοδύναμες. Αυτές απλοποιούνται στην πρόταση T. Η πρόταση F παίζει το ρόλο της DNF μορφής μιας αντινομίας. 45

46 11.11 Μετατροπή Προτάσεων του Π.Λ. σε DNF Η μετατροπή γίνεται σε τρία στάδια : ( α ) Τα συνδετικά και τα αντικαθιστούμε από ισοδύναμες εκφράσεις, χρησιμοποιώντας τα συνδετικά,, βάσει των ισοδυναμιών : ( 1 ) Α Β Α Β ( 2 ) Α Β ( Α Β ) ( Α Β ) ( β ) Ελαχιστοποιούμε το πεδίο της άρνησης με χρήση των κανόνων De Morgan : ( 3 ) ( Α1 Α2 Αn ) Α1 Α2 Αn ( 4 ) ( Α1 Α2 Αn ) Α1 Α2 Αn ( γ ) Απαλείφουμε διπλές αρνήσεις : ( 5 ) Α Α 46

47 11.12 Αλγόριθμος Μετατροπής Προτάσεων του Π.Λ. σε DNF ( 1 ) Χρησιμοποιούμε τις ισοδυναμίες ( 1 ) και ( 2 ) για την αντικατάσταση των συνδετικών και. ( 2 ) Χρησιμοποιούμε τις ισοδυναμίες ( 3 ), ( 4 ) και ( 5 ) για να ελαχιστοποιήσουμε το πεδίο της άρνησης. ( 3 ) Χρησιμοποιούμε την επιμεριστικότητα της σύζευξης προς τη διάζευξη, για να μετατρέψουμε διαζεύξεις που να εμφανίζονται μέσα στο πεδίο μιας σύζευξης, σε μια διάζευξη συζεύξεων. ( 4 ) Αφαιρούμε διπλά γράμματα από ελάχιστους όρους, διπλούς ελάχιστους όρους, αντικαθιστούμε αντινομίες με F και εφαρμόζουμε την απορρόφηση και την συνένωση όπου είναι δυνατό. Παράδειγμα : Μετατροπή της πρότασης ( ( Α Β ) C ) ( A C ) σε DNF. ( α ) Η πρόταση είναι ισοδύναμη με : ( ( A B ) C ) ( A C ) ( ( A B ) C ) ( A C ) ( ( ( A B ) C ) ( A C ) ) ( ( ( A B ) C ) ( A C ) ) ( β ) Στο 2 ο βήμα η πρόταση μετατρέπεται ως εξής : ( ( ( A B ) C ) ( A C ) ) ( ( ( A B ) C ) ( A C ) ) ( ( ( A B ) C ) ( A C ) ) ( ( A B ) C A C ) ( γ ) Στο 3 ο βήμα η πρόταση μετατρέπεται ως εξής : ( A B A ) ( A B C ) ( C A ) ( C C ) ( A C A C ) ( B C A C ) 47

48 ( δ ) Στο 4 ο βήμα η πρόταση μετατρέπεται ως εξής : ( A B A ) ( A B C ) ( C A ) C ( A C A ) ( B C A ) F ( A B C ) ( C A ) C F ( B C A ) ( A B C ) ( A C ) C ( A B C ) C ( A B C ) Ο αλγόριθμος πάντα δίνει ως αποτέλεσμα μια πρόταση σε DNF, αλλά όχι πάντα την απλούστερη. Αν μάλιστα η πρόταση είναι ήδη σε DNF δεν θα αλλαχθεί καθόλου από τον αλγόριθμο. Για παράδειγμα, η πρόταση ( Α Β ) Β είναι ισοδύναμη με την πρόταση Α Β αλλά ο αλγόριθμος δεν θα μετατρέψει την αρχική πρόταση, αλλά θα την αφήσει ως έχει. Επίσης, η ταυτολογία ( Α Β ) ( Α Β ) θα μετατραπεί στην DNF μορφή ( Α Β ) Α Β αλλά όχι στην Τ. Στον αλγόριθμο θα μπορούσαμε να προσθέσουμε και τη χρήση των παρακάτω ισοδυναμιών : ( Α Β ) Β Α Β ( Α Β ) Β Α Β Σαν ένα τελικό βήμα απλοποίησης, το οποίο μας επιτρέπει να αφαιρέσουμε από κάποιο ελάχιστο όρο κάποιο γράμμα ή κάποια άρνηση του οποίου εμφανίζεται στην πρόταση σαν ελάχιστος όρος. Και πάλι όμως δεν θα καταλήξουμε στην απλούστερη μορφή σε κάθε περίπτωση. Δεν υπάρχει αλγόριθμος ο οποίος εγγυάται την παραγωγή της απλούστερης DNF μορφής μιας πρότασης. 48

49 12 Η Γλώσσα C Η C ( προφέρεται «σι» ) είναι μια διαδικαστική γλώσσα προγραμματισμού γενικής χρήσης, η οποία αναπτύχθηκε αρχικά, μεταξύ του 1969 και του 1973, από τον Ντένις Ρίτσι στα εργαστήρια AT&T Bell Labs για να χρησιμοποιηθεί για την ανάπτυξη του λειτουργικού συστήματος UNIX. Όπως οι περισσότερες διαδικαστικές γλώσσες προγραμματισμού που ακολουθούν την παράδοση της ALGOL, η C έχει δυνατότητες δομημένου προγραμματισμού και επιτρέπει τη χρήση αναδρομής ( αλλά όχι και εμφωλευμένων συναρτήσεων ), ενώ ο στατικός ορισμός του τύπου των μεταβλητών που επιβάλει, προλαμβάνει πολλά σφάλματα κατά την χρήση τους. Ο σχεδιασμός της περιλαμβάνει δομές που μεταφράζονται αποδοτικά σε τυπικές εντολές μηχανής ( machine instructions ) και εξ αιτίας αυτού χρησιμοποιείται συχνά σε εφαρμογές που παλιότερα γράφονταν σε συμβολική γλώσσα ( assembly language ). Αυτό ακριβώς το χαρακτηριστικό της, είναι που έχει σαν συνέπεια και την αυξημένη ταχύτητα εκτέλεσης των εφαρμογών που γράφονται σε αυτή, καθώς και το γεγονός ότι είναι διαθέσιμη στα περισσότερα σημερινά λειτουργικά συστήματα, συνέβαλε κατά πολύ στην καθιέρωσή της και την χρήση της για την ανάπτυξη λειτουργικών συστημάτων και λοιπών προγραμμάτων συστήματος ( system software ), αλλά και απλών εφαρμογών. Την C την συγκαταλέγουμε πλέον στις πιο ευρέως χρησιμοποιούμενες γλώσσες προγραμματισμού όλων των εποχών και πολλές νεώτερες γλώσσες έχουν επηρεαστεί 49

50 άμεσα ή έμμεσα από αυτήν, συμπεριλαμβανομένου των C++, C#, D, Go, Java, JavaScript, Limbo, LPC, Perl, PHP, Python, καθώς και του κελύφους C ( C sheel ) του Unix. Κάποιες από αυτές τις γλώσσες έχουν επηρεαστεί κυρίως στη σύνταξη τους, με τα συστήματα τύπων, τα μοντέλα δεδομένων και το νόημα των εκφράσεων τους να διαφέρουν σημαντικά από την C. Η C++ ειδικά, ξεκίνησε σαν προεπεξεργαστής της C, αλλά έχει εξελιχθεί πλέον σε μια αντικειμενοστραφή γλώσσα, που αποτελεί υπερσύνολο της C. Εικόνα 8: Δημοτικότητα Γλωσσών Στην C δεν επιβάλλεται κάποια συγκεκριμένη μορφή στον πηγαίο κώδικα ( όπως, για παράδειγμα, συνέβαινε στις αρχικές εκδόσεις της Fortran ). Ο προγραμματιστής, χωρίς να αγνοεί φυσικά το συντακτικό της γλώσσας, είναι ελεύθερος να δώσει όποια μορφή θέλει στον κώδικα που γράφει ( free-format source ). Το ελληνικό ερωτηματικό ( ; ) χρησιμοποιείται ως τερματιστής εντολών ( και όχι σαν διαχωριστής, όπως στην Pascal ) και τα άγκιστρα ( { ) χρησιμοποιούνται για την ομαδοποίηση εντολών ( όπως τα begin/end στην Pascal ). Επίσης, στην C όλος ο εκτελέσιμος κώδικας περιέχεται σε υπορουτίνες οι οποίες ονομάζονται «συναρτήσεις». Οι παράμετροι περνιούνται στις συναρτήσεις πάντα με τιμή ( pass-by-value ). Το πέρασμα με αναφορά ( pass-by-reference ) γίνεται έμμεσα στην ουσία, περνώντας ως παραμέτρους των συναρτήσεων, δείκτες στις μεταβλητές των οποίων θέλουμε να αλλάζουμε τις τιμές μέσα από τις συναρτήσεις. 50

51 Εικόνα 9: Hello World - το Πρώτο Πρόγραμμα κάθε Προγραμματιστή! Η C έχει ακόμη τα εξής χαρακτηριστικά : Έχει ένα πολύ μικρό σταθερό πλήθος λέξεων-κλειδιών ( keywords ), το οποίο περιλαμβάνει ένα πλήρες σύνολο δομών/εντολών ελέγχου ροής : for, if/else, while, switch, do/while και goto. Υπάρχει μόνο ένας χώρος ονομάτων ( namespace ) και τα ονόματα ( μεταβλητών, συναρτήσεων, κ.τ.λ. ) που ορίζονται από το χρήστη δεν διακρίνονται με κάποιο τρόπο από τις λέξεις-κλειδιά της γλώσσας. Υπάρχει ένα μεγάλο πλήθος αριθμητικών και λογικών τελεστών, όπως οι : +, +=, ++, -, -=, --, *, *=, /, /=, ==, &, &&,,, ~, κ.ά. Σε μία εντολή μπορεί να γίνουν παραπάνω από μια εκχωρήσεις τιμών. Η τιμή που επιστρέφει μια συνάρτηση, μπορεί να αγνοηθεί εάν δεν χρειάζεται. Ο ορισμός των τύπων των μεταβλητών είναι στατικός και απαραίτητος, αλλά γίνονται έμμεσες μετατροπές από τη γλώσσα. Για παράδειγμα, παραστάσεις με τύπο χαρακτήρα, μπορούν να χρησιμοποιηθούν σε σημεία που απαιτείται ακέραιος. 51

52 Η σύνταξη των δηλώσεων ονομάτων προσομοιάζει την χρήση αυτών μέσα στον εκτελέσιμο κώδικα. Η C δεν έχει ειδική λέξη-κλειδί για τον ορισμό ονομάτων ή συναρτήσεων. Μια γραμμή που ξεκινάει με το όνομα ενός τύπου, εκλαμβάνεται σαν ορισμός μεταβλητής ή συνάρτησης, ανάλογα με το αν υπάρχουν ή όχι παρενθέσεις που περικλείουν παραμέτρους συνάρτησης. Ο χρήστης μπορεί να ορίσει δικούς του τύπους, εάν το επιθυμεί. Μπορεί επίσης να ορίσει και τύπους εγγραφών ( για παράδειγμα, struct στη C ). Μπορούν να οριστούν πίνακες, αν και δεν υπάρχει ειδική λέξη-κλειδί για τον ορισμό τους. Η δεικτοδότηση τους γίνεται με την χρήση αγκυλών ( [ ] ), αν και πολύ συχνά γίνεται χρήση αριθμητικής δεικτών. Το πρώτο στοιχείο κάθε πίνακα δεικτοδοτείται πάντα από το μηδέν ( 0 ). Για παράδειγμα, το στοιχείο hello [ 0 ] είναι το πρώτο στοιχείο του πίνακα hello. Τέλος, δεν υπάρχουν τελεστές για την σύγκριση ή εκχώρηση πινάκων. Δεν υπάρχει ιδιαίτερος τύπος για αλφαριθμητικά, τα οποία υλοποιούνται και αντιμετωπίζονται σαν πίνακες από χαρακτήρες και έχουν έναν μηδενικό χαρακτήρα να σημαδεύει το τέλος τους ( null-terminated arrays of characters ). Είναι δυνατή η άμεση προσπέλαση χαμηλού επιπέδου στη μνήμη του υπολογιστή με τη χρήση δεικτών. Οι υπορουτίνες που δεν επιστρέφουν τιμή, είναι συναρτήσεις που ορίζονται να είναι τύπου «void» ( είναι ψευδοτύπος που δείχνει την απουσία επιστρεφόμενης τιμής, αλλά χρησιμοποιείται και για δείκτες που δεν δείχνουν σε αντικείμενο συγκεκριμένου τύπου ). Οι πολύπλοκες λειτουργίες, όπως οι λειτουργίες εισόδου/εξόδου, ο χειρισμός των αλφαριθμητικών, καθώς και οι μαθηματικές συναρτήσεις έχουν ανατεθεί στις αντίστοιχες βιβλιοθήκες. Η C δεν διαθέτει κάποιες από τις δυνατότητες νεώτερων γλωσσών, όπως τον προσανατολισμό στα αντικείμενα και την συλλογή απορριμμάτων ( garbage collection ). [ 2 ] 52

53 Εικόνα 10: Ιστορική Αναδρομή Γλωσσών Προγραμματισμού 53

54 13 Βιβλιογραφία [ 1 ] Λογικές Πράξεις και Δυαδική Λογική [ 2 ] C ( Γλώσσα Προγραμματισμού ) CF%83%CE%B1_%CF%80%CF%81%CE%BF%CE%B3%CF%81%CE%B1%CE %BC%CE%BC%CE%B1%CF%84%CE%B9%CF%83%CE%BC%CE%BF%CF%8 D%29 [ 3 ] Σημειώσεις για Λογική από τον εισηγητή Παπαδάκη Νικόλαο. 54

55 14 Παράρτημα #include <stdio.h> #include <stdlib.h> #include <string.h> /* * Dilwseis synarthsewn. */ void readvariables(char *); void readoperators(char *,char *); int finalcalc(char *,char *); /* * Dilwseis global metavliton. */ int a=-1,b=-1,c=-1,d=-1,e=-1; char x='y'; /* * Enarksh ths main. */ int main() { /* Xrisimopoioume thn while gia na mporoume na ksanakalesoume to programma, an theloume, gia na dwsoume ki alli parastasi. */ while(x == 'y') { /* * Xreiazomaste enan pinaka gia na kataxwrisoume olokliri tin parastasi mazi me ta symvola * gia tis treis logikes prakseis (&& [^] sizefksi, [v] diazefksi,-> sinepagwgi) * Tha einai pinakas xarakthrwn giati tha pairnei symvola kai grammata. * Efoson exoume maximum 5 metavlites pou pairnoun times 0-1 kai to kathe symvolo pianei * xwro dyo xarakthrwn tote oi megistes theseis * pou tha prepei na exei o pinakas pou tha krataei tin parastasi den tha einai parapanw * apo 14 me to \0 (a&&b&&c&&d&&e). */ char parastasi[14]; 55

56 /* * Enas pinakas ston opoio tha apothikeuoume tin seira me tin opoia vriskoume tous logikous * telestes (&,,-) */ char opsequence[4]; /* * Diavazoume tin parastasi. */ printf("dwste tin parastasi\n"); gets(parastasi); /* * Xrisimopoioume mia synartisi pou tha ksexwrizei ta onomata ton metavliton apo ta symvola * twn logikwn praksewn kai tha tous dinei times. * Px. an dwsw "a&&b&&c" auto tha vriskei oti xrisimopoihsa 3 metavlites tin a tin b kai * tin c kai meta tha diavazei tis times tous kai tous tis ekxwrei me xrhsh deiktwn, * akoma vriskei tis prakseis pou tha prepei na ginoun anamesa tous kai tis pragmatopoiei. */ readvariables(parastasi); /* * Ousiastika edw kanoume to idio pragma gia tous telestes me auto pou kaname gia tis * metavlites gia na tous exoume se mia swsth seira */ readoperators(parastasi,opsequence); /* * Se auto to simeio exoume tis metavlites gemismenes me times kai tous operators se enan * pinaka opote xreiazomaste mia synartisi i opoia na kanei ton teliko ypologismo. */ int result = finalcalc(parastasi,opsequence); printf("\n FINAL RESULT: %d \n", result); getchar(); getchar(); printf("thelete na dwsete alli parastasi?? y or n??\n"); x=getch(); 56

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ Λογική Δημήτρης Πλεξουσάκης 1ο μέρος σημειώσεων: Προτασιακός Λογισμός Τμήμα Επιστήμης Υπολογιστών Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται στην άδεια

Διαβάστε περισσότερα

Κανονικές μορφές - Ορισμοί

Κανονικές μορφές - Ορισμοί HY-180 Περιεχόμενα Κανονικές μορφές (Normal Forms) Αλγόριθμος μετατροπής σε CNF-DNF Άρνηση (Negation) Βασικές Ισοδυναμίες με άρνηση Νόμος De Morgan Πίνακες Αληθείας Κανονικές μορφές - Ορισμοί Ορισμός:

Διαβάστε περισσότερα

Συνέπεια, Εγκυρότητα, Συνεπαγωγή, Ισοδυναμία, Κανονικές μορφές, Αλγόριθμοι μετατροπής σε CNF-DNF

Συνέπεια, Εγκυρότητα, Συνεπαγωγή, Ισοδυναμία, Κανονικές μορφές, Αλγόριθμοι μετατροπής σε CNF-DNF Συνέπεια, Εγκυρότητα, Συνεπαγωγή, Ισοδυναμία, Κανονικές μορφές, Αλγόριθμοι μετατροπής σε CNF-DNF 1 ο φροντιστήριο ΗΥ180 Διδάσκων: Δ. Πλεξουσάκης Πέμπτη 15/02/2018 Κρεατσούλας Κωνσταντίνος Ασυνεπές σύνολο

Διαβάστε περισσότερα

Λογική. Φροντιστήριο 3: Συνεπαγωγή/Ισοδυναμία, Ταυτολογίες/Αντινομίες, Πλήρης Αλγόριθμος Μετατροπής σε CNF

Λογική. Φροντιστήριο 3: Συνεπαγωγή/Ισοδυναμία, Ταυτολογίες/Αντινομίες, Πλήρης Αλγόριθμος Μετατροπής σε CNF ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ Λογική Φροντιστήριο 3: Συνεπαγωγή/Ισοδυναμία, Ταυτολογίες/Αντινομίες, Πλήρης Αλγόριθμος Μετατροπής σε CNF Δημήτρης Πλεξουσάκης Τμήμα Επιστήμης Υπολογιστών Άδειες

Διαβάστε περισσότερα

Επανάληψη. ΗΥ-180 Spring 2019

Επανάληψη. ΗΥ-180 Spring 2019 Επανάληψη Έχουμε δει μέχρι τώρα 3 μεθόδους αποδείξεων του Προτασιακού Λογισμού: Μέσω πίνακα αληθείας για τις υποθέσεις και το συμπέρασμα, όπου ελέγχουμε αν υπάρχουν ερμηνείες που ικανοποιούν τις υποθέσεις

Διαβάστε περισσότερα

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ. Λογική. Δημήτρης Πλεξουσάκης

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ. Λογική. Δημήτρης Πλεξουσάκης ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ Λογική Δημήτρης Πλεξουσάκης 2ο μέρος σημειώσεων: Συστήματα Αποδείξεων για τον ΠΛ, Μορφολογική Παραγωγή, Κατασκευή Μοντέλων Τμήμα Επιστήμης Υπολογιστών Άδειες Χρήσης

Διαβάστε περισσότερα

ΑΣΚΗΣΕΙΣ. 1. Εξετάστε αν οι παρακάτω εξαγωγές συμπερασμάτων στον προτασιακό λογισμό είναι έγκυρες.

ΑΣΚΗΣΕΙΣ. 1. Εξετάστε αν οι παρακάτω εξαγωγές συμπερασμάτων στον προτασιακό λογισμό είναι έγκυρες. ΑΣΚΗΣΕΙΣ 1. Εξετάστε αν οι παρακάτω εξαγωγές συμπερασμάτων στον προτασιακό λογισμό είναι έγκυρες. α) A B/A Α Β ΑΛΒ Α α α α α α ψ ψ α ψ α ψ ψ ψ ψ ψ ψ Όπως βλέπουμε, αν η πρόταση A B είναι αληθής, τότε σε

Διαβάστε περισσότερα

Βασικές Ισοδυναμίες με Άρνηση, Πίνακες Αληθείας, Λογική Συνεπαγωγή, Ταυτολογίες, Αντινομίες, Πλήρης Αλγόριθμος Μετατροπής CNF

Βασικές Ισοδυναμίες με Άρνηση, Πίνακες Αληθείας, Λογική Συνεπαγωγή, Ταυτολογίες, Αντινομίες, Πλήρης Αλγόριθμος Μετατροπής CNF Βασικές Ισοδυναμίες με Άρνηση, Πίνακες Αληθείας, Λογική Συνεπαγωγή, Ταυτολογίες, Αντινομίες, Πλήρης Αλγόριθμος Μετατροπής CNF 2 ο φροντιστήριο ΗΥ180 Διδάσκων: Δ. Πλεξουσάκης Τετάρτη 28/02/2018 Κρεατσούλας

Διαβάστε περισσότερα

Συνέπεια, Εγκυρότητα, Συνεπαγωγή, Ισοδυναμία, Κανονικές μορφές, Αλγόριθμοι μετατροπής σε CNF-DNF

Συνέπεια, Εγκυρότητα, Συνεπαγωγή, Ισοδυναμία, Κανονικές μορφές, Αλγόριθμοι μετατροπής σε CNF-DNF Συνέπεια, Εγκυρότητα, Συνεπαγωγή, Ισοδυναμία, Κανονικές μορφές, Αλγόριθμοι μετατροπής σε CNF-DNF 1 ο φροντιστήριο ΗΥ180 Διδάσκων: Δ. Πλεξουσάκης Πέμπτη 15/02/2018 Κρεατσούλας Κωνσταντίνος Ασυνεπές σύνολο

Διαβάστε περισσότερα

1 Συνοπτική ϑεωρία. 1.1 Νόµοι του Προτασιακού Λογισµού. p p p. p p. ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ Τµήµα Επιστήµης Υπολογιστών

1 Συνοπτική ϑεωρία. 1.1 Νόµοι του Προτασιακού Λογισµού. p p p. p p. ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ Τµήµα Επιστήµης Υπολογιστών ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ Τµήµα Επιστήµης Υπολογιστών HY-180: Λογική Εαρινό Εξάµηνο 2016 Κ. Βάρσος Πρώτο Φροντιστήριο 1 Συνοπτική ϑεωρία 1.1 Νόµοι του Προτασιακού Λογισµού 1. Νόµος ταυτότητας : 2. Νόµοι αυτοπάθειας

Διαβάστε περισσότερα

Διακριτά Μαθηματικά ΙΙ Χρήστος Νομικός Τμήμα Μηχανικών Η/Υ και Πληροφορικής Πανεπιστήμιο Ιωαννίνων 2018 Χρήστος Νομικός ( Τμήμα Μηχανικών Η/Υ Διακριτά

Διακριτά Μαθηματικά ΙΙ Χρήστος Νομικός Τμήμα Μηχανικών Η/Υ και Πληροφορικής Πανεπιστήμιο Ιωαννίνων 2018 Χρήστος Νομικός ( Τμήμα Μηχανικών Η/Υ Διακριτά Διακριτά Μαθηματικά ΙΙ Χρήστος Νομικός Τμήμα Μηχανικών Η/Υ και Πληροφορικής Πανεπιστήμιο Ιωαννίνων 2018 Χρήστος Νομικός ( Τμήμα Μηχανικών Η/Υ Διακριτά και Πληροφορικής Μαθηματικά Πανεπιστήμιο ΙΙ Ιωαννίνων

Διαβάστε περισσότερα

Βασικές Ισοδυναμίες με Άρνηση /Πίνακες Αληθείας /Λογική Συνεπαγωγή /Ταυτολογίες /Αντινομίες Πλήρης αλγόριθμος μετατροπής CNF

Βασικές Ισοδυναμίες με Άρνηση /Πίνακες Αληθείας /Λογική Συνεπαγωγή /Ταυτολογίες /Αντινομίες Πλήρης αλγόριθμος μετατροπής CNF Βασικές Ισοδυναμίες με Άρνηση /Πίνακες Αληθείας /Λογική Συνεπαγωγή /Ταυτολογίες /Αντινομίες Πλήρης αλγόριθμος μετατροπής CNF 2 ο φροντιστήριο ΗΥ180 Διδάσκων: Δ. Πλεξουσάκης Πέμπτη 3/3/2016 Κατερίνα Δημητράκη

Διαβάστε περισσότερα

ΒΑΣΙΚΕΣ ΑΡΧΕΣ ΨΗΦΙΑΚΗΣ ΤΕΧΝΟΛΟΓΙΑΣ. Κεφάλαιο 3

ΒΑΣΙΚΕΣ ΑΡΧΕΣ ΨΗΦΙΑΚΗΣ ΤΕΧΝΟΛΟΓΙΑΣ. Κεφάλαιο 3 ΒΑΣΙΚΕΣ ΑΡΧΕΣ ΨΗΦΙΑΚΗΣ ΤΕΧΝΟΛΟΓΙΑΣ Κεφάλαιο 3 Δυαδική λογική Με τον όρο λογική πρόταση ή απλά πρόταση καλούμε κάθε φράση η οποία μπορεί να χαρακτηριστεί αληθής ή ψευδής με βάση το νόημα της. π.χ. Σήμερα

Διαβάστε περισσότερα

Προτασιακή Λογική. Τμήμα Μηχανικών Πληροφορικής ΤΕ ΤΕΙ Ηπείρου Γκόγκος Χρήστος

Προτασιακή Λογική. Τμήμα Μηχανικών Πληροφορικής ΤΕ ΤΕΙ Ηπείρου Γκόγκος Χρήστος Προτασιακή Λογική (Propositional Logic) Τμήμα Μηχανικών Πληροφορικής ΤΕ ΤΕΙ Ηπείρου Γκόγκος Χρήστος - 2015 Λογική Λογική είναι οι κανόνες που διέπουν τη σκέψη. Η λογική αφορά τη μελέτη των διαδικασιών

Διαβάστε περισσότερα

Γενικά Στοιχεία Ηλεκτρονικού Υπολογιστή

Γενικά Στοιχεία Ηλεκτρονικού Υπολογιστή Γενικά Στοιχεία Ηλεκτρονικού Υπολογιστή 1. Ηλεκτρονικός Υπολογιστής Ο Ηλεκτρονικός Υπολογιστής είναι μια συσκευή, μεγάλη ή μικρή, που επεξεργάζεται δεδομένα και εκτελεί την εργασία του σύμφωνα με τα παρακάτω

Διαβάστε περισσότερα

Λογική. Προτασιακή Λογική. Λογική Πρώτης Τάξης

Λογική. Προτασιακή Λογική. Λογική Πρώτης Τάξης Λογική Προτασιακή Λογική Λογική Πρώτης Τάξης Λογική (Logic) Αναλογίες διαδικασίας επίλυσης προβλημάτων υπολογισμού και προβλημάτων νοημοσύνης: Πρόβλημα υπολογισμού 1. Επινόηση του αλγορίθμου 2. Επιλογή

Διαβάστε περισσότερα

Λογική. Δημήτρης Πλεξουσάκης. Ασκήσεις 2ου Φροντιστηρίου: Προτασιακός Λογισμός: Κανονικές Μορφές, Απλός Αλγόριθμος Μετατροπής σε CNF/DNF, Άρνηση

Λογική. Δημήτρης Πλεξουσάκης. Ασκήσεις 2ου Φροντιστηρίου: Προτασιακός Λογισμός: Κανονικές Μορφές, Απλός Αλγόριθμος Μετατροπής σε CNF/DNF, Άρνηση Λογική Δημήτρης Πλεξουσάκης Ασκήσεις 2ου Φροντιστηρίου: Προτασιακός Λογισμός: Κανονικές Μορφές, Απλός Αλγόριθμος Μετατροπής σε CNF/DNF, Άρνηση Τμήμα Επιστήμης Υπολογιστών Άδειες Χρήσης a. Το παρόν εκπαιδευτικό

Διαβάστε περισσότερα

Κεφάλαιο 4. Λογική Σχεδίαση

Κεφάλαιο 4. Λογική Σχεδίαση Κεφάλαιο 4 Λογική Σχεδίαση 4.1 Εισαγωγή Λογικές συναρτήσεις ονομάζουμε εκείνες για τις οποίες μπορούμε να αποφασίσουμε αν είναι αληθείς ή όχι. Χειριζόμαστε τις λογικές προτάσεις στην συγγραφή λογισμικού

Διαβάστε περισσότερα

K15 Ψηφιακή Λογική Σχεδίαση 4+5: Άλγεβρα Boole

K15 Ψηφιακή Λογική Σχεδίαση 4+5: Άλγεβρα Boole K15 Ψηφιακή Λογική Σχεδίαση 4+5: Άλγεβρα Boole Γιάννης Λιαπέρδος TEI Πελοποννήσου Σχολή Τεχνολογικών Εφαρμογών Τμήμα Μηχανικών Πληροφορικής ΤΕ Ορισμός της δίτιμης άλγεβρας Boole Περιεχόμενα 1 Ορισμός της

Διαβάστε περισσότερα

Υπολογιστικά & Διακριτά Μαθηματικά

Υπολογιστικά & Διακριτά Μαθηματικά Υπολογιστικά & Διακριτά Μαθηματικά Ενότητα 2:Στοιχεία Μαθηματικής Λογικής Στεφανίδης Γεώργιος Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό,

Διαβάστε περισσότερα

ΤΕΧΝΗΤΗ ΝΟΗΜΟΣΥΝΗ. Ενότητα 9: Προτασιακή λογική. Ρεφανίδης Ιωάννης Τμήμα Εφαρμοσμένης Πληροφορικής

ΤΕΧΝΗΤΗ ΝΟΗΜΟΣΥΝΗ. Ενότητα 9: Προτασιακή λογική. Ρεφανίδης Ιωάννης Τμήμα Εφαρμοσμένης Πληροφορικής Ενότητα 9: Προτασιακή λογική Ρεφανίδης Ιωάννης Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό, όπως εικόνες, που υπόκειται σε άλλου τύπου

Διαβάστε περισσότερα

HY Λογική Διδάσκων: Δ. Πλεξουσάκης Εαρινό Εξάμηνο. Φροντιστήριο 6

HY Λογική Διδάσκων: Δ. Πλεξουσάκης Εαρινό Εξάμηνο. Φροντιστήριο 6 HY-180 - Λογική Διδάσκων: Δ. Πλεξουσάκης Εαρινό Εξάμηνο 2015-2016 Φροντιστήριο 6 Α) ΘΕΩΡΙΑ Μέθοδος Επίλυσης (Resolution) Στη μέθοδο της επίλυσης αποδεικνύουμε την ικανοποιησιμότητα ενός συνόλου προτάσεων,

Διαβάστε περισσότερα

Γ2.1 Στοιχεία Αρχιτεκτονικής. Γ Λυκείου Κατεύθυνσης

Γ2.1 Στοιχεία Αρχιτεκτονικής. Γ Λυκείου Κατεύθυνσης Γ2.1 Στοιχεία Αρχιτεκτονικής Γ Λυκείου Κατεύθυνσης Ορισμός άλγεβρας Boole Η άλγεβρα Boole ορίζεται, ως μία αλγεβρική δομή A, όπου: (α) Το Α είναι ένα σύνολο στοιχείων που περιέχει δύο τουλάχιστον στοιχεία

Διαβάστε περισσότερα

4. Ο,τιδήποτε δεν ορίζεται με βάση τα (1) (3) δεν είναι προτασιακός τύπος.

4. Ο,τιδήποτε δεν ορίζεται με βάση τα (1) (3) δεν είναι προτασιακός τύπος. Κεφάλαιο 10 Μαθηματική Λογική 10.1 Προτασιακή Λογική Η γλώσσα της μαθηματικής λογικής στηρίζεται βασικά στις εργασίες του Boole και του Frege. Ο Προτασιακός Λογισμός περιλαμβάνει στο αλφάβητό του, εκτός

Διαβάστε περισσότερα

p p 0 1 1 0 p q p q p q 0 0 0 0 1 0 1 0 0 1 1 1 p q

p p 0 1 1 0 p q p q p q 0 0 0 0 1 0 1 0 0 1 1 1 p q Σημειώσεις του Μαθήματος Μ2422 Λογική Κώστας Σκανδάλης ΤΜΗΜΑ ΜΑΘΗΜΑΤΙΚΩΝ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ 2010 Εισαγωγή Η Λογική ασχολείται με τους νόμους ορθού συλλογισμού και μελετά τους κανόνες βάσει των οποίων

Διαβάστε περισσότερα

Λογική Δημήτρης Πλεξουσάκης Φροντιστήριο 6: Προτασιακός Λογισμός: Μέθοδος Επίλυσης Τμήμα Επιστήμης Υπολογιστών

Λογική Δημήτρης Πλεξουσάκης Φροντιστήριο 6: Προτασιακός Λογισμός: Μέθοδος Επίλυσης Τμήμα Επιστήμης Υπολογιστών Λογική Δημήτρης Πλεξουσάκης Φροντιστήριο 6: Προτασιακός Λογισμός: Μέθοδος Επίλυσης Τμήμα Επιστήμης Υπολογιστών Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται στην άδεια χρήσης Creative Commons και

Διαβάστε περισσότερα

Δομημένος Προγραμματισμός (ΤΛ1006)

Δομημένος Προγραμματισμός (ΤΛ1006) Τεχνολογικό Εκπαιδευτικό Ίδρυμα Κρήτης Σχολή Εφαρμοσμένων Επιστημών Τμήμα Ηλεκτρονικών Μηχανικών Τομέας Αυτοματισμού και Πληροφορικής Δομημένος Προγραμματισμός (ΤΛ1006) Δρ. Μηχ. Νικόλαος Πετράκης, Καθηγητής

Διαβάστε περισσότερα

Τεχνητή Νοημοσύνη. 8η διάλεξη ( ) Ίων Ανδρουτσόπουλος.

Τεχνητή Νοημοσύνη. 8η διάλεξη ( ) Ίων Ανδρουτσόπουλος. Τεχνητή Νοημοσύνη 8η διάλεξη (2016-17) Ίων Ανδρουτσόπουλος http://www.aueb.gr/users/ion/ 1 Οι διαφάνειες αυτής της διάλεξης βασίζονται στο βιβλίο Artificial Intelligence A Modern Approach των S. Russel

Διαβάστε περισσότερα

Ελίνα Μακρή

Ελίνα Μακρή Ελίνα Μακρή elmak@unipi.gr Μετατροπή Αριθμητικών Συστημάτων Πράξεις στα Αριθμητικά Συστήματα Σχεδίαση Ψηφιακών Κυκλωμάτων με Logism Άλγεβρα Boole Λογικές Πύλες (AND, OR, NOT, NAND, XOR) Flip Flops (D,

Διαβάστε περισσότερα

4. ΝΟΜΟΙ ΔΥΑΔΙΚΗΣ ΑΛΓΕΒΡΑΣ

4. ΝΟΜΟΙ ΔΥΑΔΙΚΗΣ ΑΛΓΕΒΡΑΣ 4. ΝΟΜΟΙ ΔΥΔΙΚΗΣ ΛΓΕΡΣ 4.1 ασικές έννοιες Εισαγωγή Η δυαδική άλγεβρα ή άλγεβρα oole θεμελιώθηκε από τον Άγγλο μαθηματικό George oole. Είναι μία "Λογική Άλγεβρα" για τη σχεδίαση κυκλωμάτων διακοπτών. Η

Διαβάστε περισσότερα

Υπολογιστική Λογική και Λογικός Προγραμματισμός

Υπολογιστική Λογική και Λογικός Προγραμματισμός ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ Υπολογιστική Λογική και Λογικός Προγραμματισμός Ενότητα 2: Λογική: Εισαγωγή, Προτασιακή Λογική. Νίκος Βασιλειάδης, Αναπλ. Καθηγητής Άδειες

Διαβάστε περισσότερα

K15 Ψηφιακή Λογική Σχεδίαση 3: Προτασιακή Λογική / Θεωρία Συνόλων

K15 Ψηφιακή Λογική Σχεδίαση 3: Προτασιακή Λογική / Θεωρία Συνόλων K15 Ψηφιακή Λογική Σχεδίαση 3: Προτασιακή Λογική / Θεωρία Συνόλων Γιάννης Λιαπέρδος TEI Πελοποννήσου Σχολή Τεχνολογικών Εφαρμογών Τμήμα Μηχανικών Πληροφορικής ΤΕ Στοιχεία προτασιακής λογικής Περιεχόμενα

Διαβάστε περισσότερα

Ελίνα Μακρή

Ελίνα Μακρή Ελίνα Μακρή elmak@unipi.gr Μετατροπή Αριθμητικών Συστημάτων Πράξεις στα Αριθμητικά Συστήματα Σχεδίαση Ψηφιακών Κυκλωμάτων με Logism Άλγεβρα Boole Λογικές Πύλες (AND, OR, NOT, NAND, XOR) Flip Flops (D,

Διαβάστε περισσότερα

ΤΜΗΜΑ ΔΙΟΙΚΗΣΗΣ ΕΠΙΧΕΙΡΗΣΕΩΝ

ΤΜΗΜΑ ΔΙΟΙΚΗΣΗΣ ΕΠΙΧΕΙΡΗΣΕΩΝ ΤΕΙ Δυτικής Μακεδονίας ΤΜΗΜΑ ΔΙΟΙΚΗΣΗΣ ΕΠΙΧΕΙΡΗΣΕΩΝ 2015-2016 Τεχνητή Νοημοσύνη Λογικοί Πράκτορες Διδάσκων: Τσίπουρας Μάρκος Εκπαιδευτικό Υλικό: Τσίπουρας Μάρκος http://ai.uom.gr/aima/ 2 Πράκτορες βασισμένοι

Διαβάστε περισσότερα

Εισαγωγή στην επιστήμη των υπολογιστών. Πράξεις με μπιτ

Εισαγωγή στην επιστήμη των υπολογιστών. Πράξεις με μπιτ Εισαγωγή στην επιστήμη των υπολογιστών Πράξεις με μπιτ 1 Πράξεις με μπιτ 2 Αριθμητικές Πράξεις σε Ακέραιους Πρόσθεση, Αφαίρεση, Πολλαπλασιασμός, Διαίρεση 3 Πρόσθεση στη μορφή συμπληρώματος ως προς δύο

Διαβάστε περισσότερα

ΚΕΦΑΛΑΙΟ 8 Η ΓΛΩΣΣΑ PASCAL

ΚΕΦΑΛΑΙΟ 8 Η ΓΛΩΣΣΑ PASCAL 8.1. Εισαγωγή ΚΕΦΑΛΑΙΟ 8 Η ΓΛΩΣΣΑ PACAL Πως προέκυψε η γλώσσα προγραμματισμού Pascal και ποια είναι τα γενικά της χαρακτηριστικά; Σχεδιάστηκε από τον Ελβετό επιστήμονα της Πληροφορικής Nicklaus Wirth to

Διαβάστε περισσότερα

Η-Υ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ. Εργαστήριο 1 Εισαγωγή στη C. Σοφία Μπαλτζή s.mpaltzi@di.uoa.gr

Η-Υ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ. Εργαστήριο 1 Εισαγωγή στη C. Σοφία Μπαλτζή s.mpaltzi@di.uoa.gr Η-Υ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Εργαστήριο 1 Εισαγωγή στη C Σοφία Μπαλτζή s.mpaltzi@di.uoa.gr Διαδικαστικά Ιστοσελίδα μαθήματος: http://eclass.uoa.gr/courses/f30/ Υποχρεωτική παρακολούθηση: Παρασκευή 14:00 16:00 στην

Διαβάστε περισσότερα

Εισαγωγή στις Βάσεις Δεδομζνων II

Εισαγωγή στις Βάσεις Δεδομζνων II ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΣΙΑ ΠΑΝΕΠΙΣΗΜΙΟ ΚΡΗΣΗ Εισαγωγή στις Βάσεις Δεδομζνων II Ενότητα: Λογική και Θεωρία Συνόλων Διδάσκων: Πηγουνάκης Κωστής ΤΜΗΜΑ ΟΙΚΟΝΟΜΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΣΧΟΛΗ ΚΟΙΝΩΝΙΚΩΝ ΕΠΙΣΤΗΜΩΝ Άδειες Χρήσης

Διαβάστε περισσότερα

K15 Ψηφιακή Λογική Σχεδίαση 6: Λογικές πύλες και λογικά κυκλώματα

K15 Ψηφιακή Λογική Σχεδίαση 6: Λογικές πύλες και λογικά κυκλώματα K15 Ψηφιακή Λογική Σχεδίαση 6: Λογικές πύλες και λογικά κυκλώματα Γιάννης Λιαπέρδος TEI Πελοποννήσου Σχολή Τεχνολογικών Εφαρμογών Τμήμα Μηχανικών Πληροφορικής ΤΕ Λογικές πύλες Περιεχόμενα 1 Λογικές πύλες

Διαβάστε περισσότερα

Εισαγωγή στην επιστήμη των υπολογιστών. Υπολογιστές και Δεδομένα Κεφάλαιο 4ο Πράξεις με μπιτ

Εισαγωγή στην επιστήμη των υπολογιστών. Υπολογιστές και Δεδομένα Κεφάλαιο 4ο Πράξεις με μπιτ Εισαγωγή στην επιστήμη των υπολογιστών Υπολογιστές και Δεδομένα Κεφάλαιο 4ο Πράξεις με μπιτ 1 Πράξεις με μπιτ 2 Αριθμητικές Πράξεις σε Ακέραιους Πρόσθεση, Αφαίρεση, Πολλαπλασιασμός, Διαίρεση Ο πολλαπλασιασμός

Διαβάστε περισσότερα

Ψηφιακά Συστήματα. 3. Λογικές Πράξεις & Λογικές Πύλες

Ψηφιακά Συστήματα. 3. Λογικές Πράξεις & Λογικές Πύλες Ψηφιακά Συστήματα 3. Λογικές Πράξεις & Λογικές Πύλες Βιβλιογραφία 1. Φανουράκης Κ., Πάτσης Γ., Τσακιρίδης Ο., Θεωρία και Ασκήσεις Ψηφιακών Ηλεκτρονικών, ΜΑΡΙΑ ΠΑΡΙΚΟΥ & ΣΙΑ ΕΠΕ, 2016. [59382199] 2. Floyd

Διαβάστε περισσότερα

Βασικοί τύποι δεδομένων (Pascal) ΕΠΑ.Λ Αλίμου Γ Πληροφορική Δομημένος Προγραμματισμός (Ε) Σχολ. Ετος Κων/νος Φλώρος

Βασικοί τύποι δεδομένων (Pascal) ΕΠΑ.Λ Αλίμου Γ Πληροφορική Δομημένος Προγραμματισμός (Ε) Σχολ. Ετος Κων/νος Φλώρος Βασικοί τύποι δεδομένων (Pascal) ΕΠΑ.Λ Αλίμου Γ Πληροφορική Δομημένος Προγραμματισμός (Ε) Σχολ. Ετος 2012-13 Κων/νος Φλώρος Απλοί τύποι δεδομένων Οι τύποι δεδομένων προσδιορίζουν τον τρόπο παράστασης των

Διαβάστε περισσότερα

Διακριτά Μαθηματικά ΙΙ Χρήστος Νομικός Τμήμα Μηχανικών Η/Υ και Πληροφορικής Πανεπιστήμιο Ιωαννίνων 2018 Χρήστος Νομικός ( Τμήμα Μηχανικών Η/Υ Διακριτά

Διακριτά Μαθηματικά ΙΙ Χρήστος Νομικός Τμήμα Μηχανικών Η/Υ και Πληροφορικής Πανεπιστήμιο Ιωαννίνων 2018 Χρήστος Νομικός ( Τμήμα Μηχανικών Η/Υ Διακριτά Διακριτά Μαθηματικά ΙΙ Χρήστος Νομικός Τμήμα Μηχανικών Η/Υ και Πληροφορικής Πανεπιστήμιο Ιωαννίνων 2018 Χρήστος Νομικός ( Τμήμα Μηχανικών Η/Υ Διακριτά και Πληροφορικής Μαθηματικά Πανεπιστήμιο ΙΙ Ιωαννίνων

Διαβάστε περισσότερα

2.1. Εντολές. 2.2. Σχόλια. 2.3. Τύποι Δεδομένων

2.1. Εντολές. 2.2. Σχόλια. 2.3. Τύποι Δεδομένων 2 Βασικές Εντολές 2.1. Εντολές Οι στην Java ακολουθούν το πρότυπο της γλώσσας C. Έτσι, κάθε εντολή που γράφουμε στη Java θα πρέπει να τελειώνει με το ερωτηματικό (;). Όπως και η C έτσι και η Java επιτρέπει

Διαβάστε περισσότερα

ΑΕΠΠ Ερωτήσεις θεωρίας

ΑΕΠΠ Ερωτήσεις θεωρίας ΑΕΠΠ Ερωτήσεις θεωρίας Κεφάλαιο 1 1. Τα δεδομένα μπορούν να παρέχουν πληροφορίες όταν υποβάλλονται σε 2. Το πρόβλημα μεγιστοποίησης των κερδών μιας επιχείρησης είναι πρόβλημα 3. Για την επίλυση ενός προβλήματος

Διαβάστε περισσότερα

Πανεπιστήμιο Δυτικής Μακεδονίας. Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών. Διακριτά Μαθηματικά. Ενότητα 6: Προτασιακός Λογισμός

Πανεπιστήμιο Δυτικής Μακεδονίας. Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών. Διακριτά Μαθηματικά. Ενότητα 6: Προτασιακός Λογισμός Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Διακριτά Μαθηματικά Ενότητα 6: Προτασιακός Λογισμός Αν. Καθηγητής Κ. Στεργίου e-mail: kstergiou@uowm.gr Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Άδειες

Διαβάστε περισσότερα

"My Binary Logic" Ένας προσομοιωτής λογικών πυλών στο Scratch

My Binary Logic Ένας προσομοιωτής λογικών πυλών στο Scratch "My Binary Logic" Ένας προσομοιωτής λογικών πυλών στο Scratch Καραγιάννη Ελένη 1, Καραγιαννάκη Μαρία-Ελένη 2, Βασιλειάδης Αθανάσιος 3, Κωστουλίδης Αναστάσιος-Συμεών 4, Μουτεβελίδης Ιωάννης-Παναγιώτης 5,

Διαβάστε περισσότερα

HY118-Διακριτά Μαθηματικά. Προτασιακός Λογισμός. Προηγούμενη φορά. Βάσεις της Μαθηματικής Λογικής. 02 Προτασιακός Λογισμός

HY118-Διακριτά Μαθηματικά. Προτασιακός Λογισμός. Προηγούμενη φορά. Βάσεις της Μαθηματικής Λογικής. 02 Προτασιακός Λογισμός HY118-Διακριτά Μαθηματικά Πέμπτη, 08/02/2018 Το υλικό των Αντώνης διαφανειών Α. Αργυρός έχει βασιστεί σε διαφάνειες του e-mail: Kees argyros@csd.uoc.gr van Deemter, από το University of Aberdeen Προηγούμενη

Διαβάστε περισσότερα

HY118-Διακριτά Μαθηματικά

HY118-Διακριτά Μαθηματικά HY118-Διακριτά Μαθηματικά Πέμπτη, 08/02/2018 Το υλικό των Αντώνης διαφανειών Α. Αργυρός έχει βασιστεί σε διαφάνειες του e-mail: Kees argyros@csd.uoc.gr van Deemter, από το University of Aberdeen 08-Feb-18

Διαβάστε περισσότερα

ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ

ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ ΤΕΙ ΙΟΝΙΩΝ ΝΗΣΩΝ ΤΜΗΜΑ ΕΦΑΡΜΟΓΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ ΣΤΗ ΔΙΟΙΚΗΣΗ ΚΑΙ ΣΤΗΝ ΟΙΚΟΝΟΜΙΑ 8 Ο ΜΑΘΗΜΑ ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ ΑΠΟΣΤΟΛΙΑ ΠΑΓΓΕ Περιεχόμενα 2 Άλγεβρα Boole Ορισμοί Λογικές πράξεις Πίνακες αληθείας Πύλες

Διαβάστε περισσότερα

Πρόγραμμα Επικαιροποίησης Γνώσεων Αποφοίτων

Πρόγραμμα Επικαιροποίησης Γνώσεων Αποφοίτων Πρόγραμμα Επικαιροποίησης Γνώσεων Αποφοίτων ΕΝΟΤΗΤΑ Μ1 ΨΗΦΙΑΚΑ ΗΛΕΚΤΡΟΝΙΚΑ Εκπαιδευτής: Γ. Π. ΠΑΤΣΗΣ, Επικ. Καθηγητής, Τμήμα Ηλεκτρονικών Μηχανικών, ΤΕΙ Αθήνας ΚΑΘΟΛΙΚΕΣ ΠΥΛΕΣ NND NOR ΑΛΓΕΒΡΑ OOLE ΘΕΩΡΗΜΑ

Διαβάστε περισσότερα

Λογική Σχεδίαση Ψηφιακών Συστημάτων

Λογική Σχεδίαση Ψηφιακών Συστημάτων Πανεπιστήμιο Θεσσαλίας Τμήμα Πληροφορικής Λογική Σχεδίαση Ψηφιακών Συστημάτων Σταμούλης Γεώργιος georges@uth.gr Δαδαλιάρης Αντώνιος dadaliaris@uth.gr Δυαδική Λογική Η δυαδική λογική ασχολείται με μεταβλητές

Διαβάστε περισσότερα

Πανεπιστήμιο Πατρών Τμήμα Φυσικής Εργαστήριο Ηλεκτρονικής. Ψηφιακά Ηλεκτρονικά. Άλγεβρα Boole και Λογικές Πύλες 2. Επιμέλεια Διαφανειών: Δ.

Πανεπιστήμιο Πατρών Τμήμα Φυσικής Εργαστήριο Ηλεκτρονικής. Ψηφιακά Ηλεκτρονικά. Άλγεβρα Boole και Λογικές Πύλες 2. Επιμέλεια Διαφανειών: Δ. Πανεπιστήμιο Πατρών Τμήμα Φυσικής Ψηφιακά Ηλεκτρονικά Άλγεβρα Boole και Λογικές Πύλες Επιμέλεια Διαφανειών: Δ. Μπακάλης Πάτρα, Φεβρουάριος 2009 Αξιωματικός Ορισμός Άλγεβρας Boole Άλγεβρα Boole: είναι μία

Διαβάστε περισσότερα

Μαθηματική Λογική και Λογικός Προγραμματισμός

Μαθηματική Λογική και Λογικός Προγραμματισμός Τμήμα Μηχανικών Πληροφοριακών και Επικοινωνιακών Συστημάτων- Σημειώσεις έτους 2007-2008 Καθηγητής Γεώργιος Βούρος Μαθηματική Λογική και Λογικός Προγραμματισμός Τμήμα Μηχανικών Πληροφοριακών και Επικοινωνιακών

Διαβάστε περισσότερα

Πρόβλημα 29 / σελίδα 28

Πρόβλημα 29 / σελίδα 28 Πρόβλημα 29 / σελίδα 28 Πρόβλημα 30 / σελίδα 28 Αντιμετάθεση / σελίδα 10 Να γράψετε αλγόριθμο, οποίος θα διαβάζει τα περιεχόμενα δύο μεταβλητών Α και Β, στη συνέχεια να αντιμεταθέτει τα περιεχόμενά τους

Διαβάστε περισσότερα

K15 Ψηφιακή Λογική Σχεδίαση 7-8: Ανάλυση και σύνθεση συνδυαστικών λογικών κυκλωμάτων

K15 Ψηφιακή Λογική Σχεδίαση 7-8: Ανάλυση και σύνθεση συνδυαστικών λογικών κυκλωμάτων K15 Ψηφιακή Λογική Σχεδίαση 7-8: Ανάλυση και σύνθεση συνδυαστικών λογικών κυκλωμάτων Γιάννης Λιαπέρδος TEI Πελοποννήσου Σχολή Τεχνολογικών Εφαρμογών Τμήμα Μηχανικών Πληροφορικής ΤΕ Η έννοια του συνδυαστικού

Διαβάστε περισσότερα

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ Λογική Δημήτρης Πλεξουσάκης 3ο μέρος σημειώσεων: Μέθοδος της Επίλυσης Τμήμα Επιστήμης Υπολογιστών Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται στην άδεια

Διαβάστε περισσότερα

Περιεχόμενα 1 Πρωτοβάθμια Λογική Χρήστος Νομικός ( Τμήμα Μηχανικών Η/Υ Διακριτά και Πληροφορικής Μαθηματικά Πανεπιστήμιο ΙΙ Ιωαννίνων ) / 60

Περιεχόμενα 1 Πρωτοβάθμια Λογική Χρήστος Νομικός ( Τμήμα Μηχανικών Η/Υ Διακριτά και Πληροφορικής Μαθηματικά Πανεπιστήμιο ΙΙ Ιωαννίνων ) / 60 Διακριτά Μαθηματικά ΙΙ Χρήστος Νομικός Τμήμα Μηχανικών Η/Υ και Πληροφορικής Πανεπιστήμιο Ιωαννίνων 2018 Χρήστος Νομικός ( Τμήμα Μηχανικών Η/Υ Διακριτά και Πληροφορικής Μαθηματικά Πανεπιστήμιο ΙΙ Ιωαννίνων

Διαβάστε περισσότερα

σύνθεση και απλοποίησή τους θεωρήµατα της άλγεβρας Boole, αξιώµατα του Huntington, κλπ.

σύνθεση και απλοποίησή τους θεωρήµατα της άλγεβρας Boole, αξιώµατα του Huntington, κλπ. Εισαγωγή Εργαστήριο 2 ΛΟΓΙΚΑ ΚΥΚΛΩΜΑΤΑ Σκοπός του εργαστηρίου είναι να κατανοήσουµε τον τρόπο µε τον οποίο εκφράζεται η ψηφιακή λογική υλοποιώντας ασκήσεις απλά και σύνθετα λογικά κυκλώµατα (χρήση του

Διαβάστε περισσότερα

Σημειώσεις Λογικής I. Εαρινό Εξάμηνο Καθηγητής: Λ. Κυρούσης

Σημειώσεις Λογικής I. Εαρινό Εξάμηνο Καθηγητής: Λ. Κυρούσης Σημειώσεις Λογικής I Εαρινό Εξάμηνο 2011-2012 Καθηγητής: Λ. Κυρούσης 2 Τελευταία ενημέρωση 28/3/2012, στις 01:37. Περιεχόμενα 1 Εισαγωγή 5 2 Προτασιακή Λογική 7 2.1 Αναδρομικοί Ορισμοί - Επαγωγικές Αποδείξεις...................

Διαβάστε περισσότερα

Pascal, απλοί τύποι, τελεστές και εκφράσεις

Pascal, απλοί τύποι, τελεστές και εκφράσεις Pascal, απλοί τύποι, τελεστές και εκφράσεις 15 Νοεμβρίου 2011 1 Γενικά Στην standard Pascal ορίζονται τέσσερις βασικοί τύποι μεταβλητών: integer: Παριστάνει ακέραιους αριθμούς από το -32768 μέχρι και το

Διαβάστε περισσότερα

2ο ΓΕΛ ΑΓ.ΔΗΜΗΤΡΙΟΥ ΑΕΠΠ ΘΕΟΔΟΣΙΟΥ ΔΙΟΝ ΠΡΟΣΟΧΗ ΣΤΑ ΠΑΡΑΚΑΤΩ

2ο ΓΕΛ ΑΓ.ΔΗΜΗΤΡΙΟΥ ΑΕΠΠ ΘΕΟΔΟΣΙΟΥ ΔΙΟΝ ΠΡΟΣΟΧΗ ΣΤΑ ΠΑΡΑΚΑΤΩ ΠΡΟΣΟΧΗ ΣΤΑ ΠΑΡΑΚΑΤΩ ΣΤΑΘΕΡΕΣ είναι τα μεγέθη που δεν μεταβάλλονται κατά την εκτέλεση ενός αλγόριθμου. Εκτός από τις αριθμητικές σταθερές (7, 4, 3.5, 100 κλπ), τις λογικές σταθερές (αληθής και ψευδής)

Διαβάστε περισσότερα

ΨΗΦΙΑΚΑ ΚΥΚΛΩΜΑΤΑ - ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ 3

ΨΗΦΙΑΚΑ ΚΥΚΛΩΜΑΤΑ - ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ 3 ΨΗΦΙΑΚΑ ΚΥΚΛΩΜΑΤΑ - ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ 3 ΑΠΛΟΠΟΙΗΣΗ και ΥΛΟΠΟΙΗΣΗ ΛΟΓΙΚΩΝ ΣΥΝΑΡΤΗΣΕΩΝ Σκοπός: Η κατανόηση της σχέσης µιας λογικής συνάρτησης µε το αντίστοιχο κύκλωµα. Η απλοποίηση λογικών συναρτήσεων

Διαβάστε περισσότερα

ΒΑΣΙΚΟΙ ΤΥΠΟΙ ΔΕΔΟΜΕΝΩΝ

ΒΑΣΙΚΟΙ ΤΥΠΟΙ ΔΕΔΟΜΕΝΩΝ Η ΓΛΩΣΣΑ PASCAL ΒΑΣΙΚΟΙ ΤΥΠΟΙ ΔΕΔΟΜΕΝΩΝ Απλοί ή στοιχειώδης Τ.Δ. Ακέραιος τύπος Πραγματικός τύπος Λογικός τύπος Χαρακτήρας Σύνθετοι Τ.Δ. Αλφαριθμητικός 1. Ακέραιος (integer) Εύρος: -32768 έως 32767 Δήλωση

Διαβάστε περισσότερα

Κατηγορηματικός Λογισμός (ΗR Κεφάλαιο 2.1-2.5)

Κατηγορηματικός Λογισμός (ΗR Κεφάλαιο 2.1-2.5) Κατηγορηματικός Λογισμός (ΗR Κεφάλαιο 2.1-2.5) Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: Εισαγωγή στον Κατηγορηματικό Λογισμό Σύνταξη Κανόνες Συμπερασμού Σημασιολογία ΕΠΛ 412 Λογική στην

Διαβάστε περισσότερα

ΚΕΦΑΛΑΙΟ 2: Τύποι δεδομένων και εμφάνιση στοιχείων...33

ΚΕΦΑΛΑΙΟ 2: Τύποι δεδομένων και εμφάνιση στοιχείων...33 ΠΕΡΙΕΧΟΜΕΝΑ Πρόλογος του συγγραφέα... 13 Πρόλογος του καθηγητή Τιμολέοντα Σελλή... 15 ΚΕΦΑΛΑΙΟ 1: Εργαλεία γλωσσών προγραμματισμού...17 1.1 Γλώσσες προγραμματισμού τρίτης γεννεάς... 18 τι είναι η γλώσσα

Διαβάστε περισσότερα

Ενδεικτικές Ερωτήσεις Θεωρίας

Ενδεικτικές Ερωτήσεις Θεωρίας Ενδεικτικές Ερωτήσεις Θεωρίας Κεφάλαιο 2 1. Τι καλούμε αλγόριθμο; 2. Ποια κριτήρια πρέπει οπωσδήποτε να ικανοποιεί ένας αλγόριθμος; 3. Πώς ονομάζεται μια διαδικασία που δεν περατώνεται μετά από συγκεκριμένο

Διαβάστε περισσότερα

Αλγόριθμοι Αναπαράσταση αλγορίθμων Η αναπαράσταση των αλγορίθμων μπορεί να πραγματοποιηθεί με:

Αλγόριθμοι Αναπαράσταση αλγορίθμων Η αναπαράσταση των αλγορίθμων μπορεί να πραγματοποιηθεί με: Αλγόριθμοι 2.2.1. Ορισμός: Αλγόριθμος είναι μια πεπερασμένη σειρά εντολών, αυστηρά καθορισμένων και εκτελέσιμων σε πεπερασμένο χρόνο, που στοχεύουν στην επίλυση ενός προβλήματος. Τα κυριότερα χρησιμοποιούμενα

Διαβάστε περισσότερα

Ανάπτυξη και Σχεδίαση Λογισμικού

Ανάπτυξη και Σχεδίαση Λογισμικού Ανάπτυξη και Σχεδίαση Λογισμικού Η γλώσσα προγραμματισμού C Γεώργιος Δημητρίου Εκφράσεις και Λίγες Εντολές Οι εκφράσεις της C Τελεστές Απλές και σύνθετες εντολές Εντολές ελέγχου (επιλογής) Εισαγωγή σε

Διαβάστε περισσότερα

Πληροφορική 2. Γλώσσες Προγραμματισμού

Πληροφορική 2. Γλώσσες Προγραμματισμού Πληροφορική 2 Γλώσσες Προγραμματισμού 1 2 Γλώσσες προγραμματσιμού Επιτρέπουν την κωδικοποίηση των αλγορίθμων Η εκτέλεση ενός προγράμματος θα πρέπει να δίνει τα ίδια αποτελέσματα με την νοητική εκτέλεση

Διαβάστε περισσότερα

ΠΕΡΙΕΧΟΜΕΝΑ ΜΕΡΟΣ Α : ΘΕΜΑΤΑ ΒΑΣΗΣ 1. ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ...11 2. ΑΡΙΘΜΗΤΙΚΑ ΣΥΣΤΗΜΑΤΑ...30

ΠΕΡΙΕΧΟΜΕΝΑ ΜΕΡΟΣ Α : ΘΕΜΑΤΑ ΒΑΣΗΣ 1. ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ...11 2. ΑΡΙΘΜΗΤΙΚΑ ΣΥΣΤΗΜΑΤΑ...30 ΠΕΡΙΕΧΟΜΕΝΑ ΜΕΡΟΣ Α : ΘΕΜΑΤΑ ΒΑΣΗΣ 1. ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ...11 1.1 Τι είναι Πληροφορική;...11 1.1.1 Τι είναι η Πληροφορική;...12 1.1.2 Τι είναι ο Υπολογιστής;...14 1.1.3 Τι είναι το Υλικό και το

Διαβάστε περισσότερα

ΨΗΦΙΑΚΑ ΗΛΕΚΤΡΟΝΙΚΑ. ιδάσκων : ρ. Β. ΒΑΛΑΜΟΝΤΕΣ. Πύλες - Άλγεβρα Boole 1

ΨΗΦΙΑΚΑ ΗΛΕΚΤΡΟΝΙΚΑ. ιδάσκων : ρ. Β. ΒΑΛΑΜΟΝΤΕΣ. Πύλες - Άλγεβρα Boole 1 ΨΗΦΙΑΚΑ ΗΛΕΚΤΡΟΝΙΚΑ ιδάσκων : ρ. Β. ΒΑΛΑΜΟΝΤΕΣ Πύλες - Άλγεβρα Boole 1 ΕΙΣΑΓΩΓΗ Α)Ηλεκτρονικά κυκλώµατα Αναλογικά κυκλώµατα Ψηφιακά κυκλώµατα ( δίτιµα ) V V 2 1 V 1 0 t t Θετική λογική: Ο V 1 µε V 1 =

Διαβάστε περισσότερα

Δυαδικό Σύστημα Αρίθμησης

Δυαδικό Σύστημα Αρίθμησης Δυαδικό Σύστημα Αρίθμησης Το δυαδικό σύστημα αρίθμησης χρησιμοποιεί δύο ψηφία. Το 0 και το 1. Τα ψηφία ενός αριθμού στο δυαδικό σύστημα αρίθμησης αντιστοιχίζονται σε δυνάμεις του 2. Μονάδες, δυάδες, τετράδες,

Διαβάστε περισσότερα

HY 180 Λογική Διδάσκων: Δ. Πλεξουσάκης Φροντιστήριο 5

HY 180 Λογική Διδάσκων: Δ. Πλεξουσάκης Φροντιστήριο 5 HY 180 Λογική Διδάσκων: Δ. Πλεξουσάκης Φροντιστήριο 5 Α) ΘΕΩΡΙΑ Η Μορφολογική Παραγωγή ανήκει στα συστήματα παραγωγής, δηλαδή σε αυτά που παράγουν το συμπέρασμα με χρήση συντακτικών κανόνων λογισμού. Η

Διαβάστε περισσότερα

Ψηφιακή Σχεδίαση Εργαστήριο Τ.Ε.Ι. ΚΡΗΤΗΣ ΣΧΟΛΗ ΤΕΧΝΟΛΟΓΙΚΩΝ ΕΦΑΡΜΟΓΩΝ ΤΜ. ΜΗΧΑΝΙΚΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ ΧΕΙΜΕΡΙΝΟ ΕΞΑΜΗΝΟ

Ψηφιακή Σχεδίαση Εργαστήριο Τ.Ε.Ι. ΚΡΗΤΗΣ ΣΧΟΛΗ ΤΕΧΝΟΛΟΓΙΚΩΝ ΕΦΑΡΜΟΓΩΝ ΤΜ. ΜΗΧΑΝΙΚΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ ΧΕΙΜΕΡΙΝΟ ΕΞΑΜΗΝΟ Ψηφιακή Σχεδίαση Εργαστήριο Τ.Ε.Ι. ΚΡΗΤΗΣ ΣΧΟΛΗ ΤΕΧΝΟΛΟΓΙΚΩΝ ΕΦΑΡΜΟΓΩΝ ΤΜ. ΜΗΧΑΝΙΚΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ ΧΕΙΜΕΡΙΝΟ ΕΞΑΜΗΝΟ 2015-2016 Άλγεβρα Boole (Boolean Algebra) Βασικοί ορισμοί Η άλγεβρα Boole μπορεί να οριστεί

Διαβάστε περισσότερα

Η γλώσσα προγραμματισμού C

Η γλώσσα προγραμματισμού C Η γλώσσα προγραμματισμού C Εισαγωγή στη C Λίγα λόγια για την C Γλώσσα προγραμματισμού υψηλού επιπέδου. Σχεδιάστηκε και υλοποιήθηκε από τον Dennis Richie στις αρχές της δεκαετίας του 1970 (Bell Labs). Η

Διαβάστε περισσότερα

Τμήμα Οικιακής Οικονομίας και Οικολογίας. Αναπαράσταση Αριθμών

Τμήμα Οικιακής Οικονομίας και Οικολογίας. Αναπαράσταση Αριθμών Αναπαράσταση Αριθμών Δεκαδικό και Δυαδικό Δεκαδικό σύστημα Δεκαδικό και Δυαδικό Μετατροπή Για τη μετατροπή ενός αριθμού από το δυαδικό σύστημα στο δεκαδικό, πολλαπλασιάζουμε κάθε δυαδικό ψηφίο του αριθμού

Διαβάστε περισσότερα

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ. Λογική. Ενότητα 1: Εισαγωγή. Δημήτρης Πλεξουσάκης Τμήμα Επιστήμης Υπολογιστών

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ. Λογική. Ενότητα 1: Εισαγωγή. Δημήτρης Πλεξουσάκης Τμήμα Επιστήμης Υπολογιστών ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ Λογική Ενότητα 1: Εισαγωγή Δημήτρης Πλεξουσάκης Τμήμα Επιστήμης Υπολογιστών Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται στην άδεια χρήσης Creative Commons

Διαβάστε περισσότερα

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ Ακαδημαϊκό έτος 2001-2002 ΤΕΤΡΑΔΙΟ ΕΡΓΑΣΤΗΡΙΟΥ #4

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ Ακαδημαϊκό έτος 2001-2002 ΤΕΤΡΑΔΙΟ ΕΡΓΑΣΤΗΡΙΟΥ #4 ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ Ακαδημαϊκό έτος 2001-2002 ΤΕΤΡΑΔΙΟ ΕΡΓΑΣΤΗΡΙΟΥ #4 «Προγραμματισμός Η/Υ» - Τετράδιο Εργαστηρίου #4 2 Γενικά Στο Τετράδιο #4 του Εργαστηρίου θα αναφερθούμε σε θέματα διαχείρισης πινάκων

Διαβάστε περισσότερα

ΜΑΘΗΜΑ 2, Έλεγχος ροής προγράμματος ΒΑΣΙΚΗ ΣΥΝΤΑΞΗ:

ΜΑΘΗΜΑ 2, Έλεγχος ροής προγράμματος ΒΑΣΙΚΗ ΣΥΝΤΑΞΗ: ΜΑΘΗΜΑ 2, 080312 Έλεγχος ροής προγράμματος Μπορούμε να χρησιμοποιήσουμε μια σειρά από λογικούς ελέγχους (συγκρίσεις) και με βάση το αποτέλεσμά τους γίνεται η λήψη αποφάσεων για τη συνέχεια του προγράμματος

Διαβάστε περισσότερα

Στοιχειώδης προγραμματισμός σε C++

Στοιχειώδης προγραμματισμός σε C++ Στοιχειώδης προγραμματισμός σε C++ Σύντομο Ιστορικό. Το πρόγραμμα Hello World. Ο τελεστής εξόδου. Μεταβλητές και δηλώσεις τους. Αντικείμενα, μεταβλητές, σταθερές. Ο τελεστής εισόδου. Θεμελιώδεις τύποι.

Διαβάστε περισσότερα

4.3 Ορθότητα και Πληρότητα

4.3 Ορθότητα και Πληρότητα 4.3 Ορθότητα και Πληρότητα Συστήματα αποδείξεων όπως η μορφολογική παραγωγή και η κατασκευή μοντέλων χρησιμοποιούνται για να δείξουμε την εγκυρότητα εξαγωγών συμπερασμάτων. Ένα σύστημα αποδείξεων μπορεί

Διαβάστε περισσότερα

3.1 Αριθμητικοί και Λογικοί Τελεστές, Μετατροπές Τύπου (Casting)

3.1 Αριθμητικοί και Λογικοί Τελεστές, Μετατροπές Τύπου (Casting) Εργαστήριο 3: 3.1 Αριθμητικοί και Λογικοί Τελεστές, Μετατροπές Τύπου (Casting) Η C++, όπως όλες οι γλώσσες προγραμματισμού, χρησιμοποιεί τελεστές για να εκτελέσει τις αριθμητικές και λογικές λειτουργίες.

Διαβάστε περισσότερα

ΠΑΝΕΠΙΣΤΗΜΙΟ AΙΓΑIΟΥ & ΑΕΙ ΠΕΙΡΑΙΑ Τ.Τ. Τμήματα Ναυτιλίας και Επιχειρηματικών Υπηρεσιών & Μηχ. Αυτοματισμού ΤΕ. Εισαγωγή στη Python

ΠΑΝΕΠΙΣΤΗΜΙΟ AΙΓΑIΟΥ & ΑΕΙ ΠΕΙΡΑΙΑ Τ.Τ. Τμήματα Ναυτιλίας και Επιχειρηματικών Υπηρεσιών & Μηχ. Αυτοματισμού ΤΕ. Εισαγωγή στη Python ΠΑΝΕΠΙΣΤΗΜΙΟ AΙΓΑIΟΥ & ΑΕΙ ΠΕΙΡΑΙΑ Τ.Τ. Τμήματα Ναυτιλίας και Επιχειρηματικών Υπηρεσιών & Μηχ. Αυτοματισμού ΤΕ ΠΛΗΡΟΦΟΡΙΚΗ ΤΕΧΝΟΛΟΓΙΑ ΚΑΙ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ Εισαγωγή στη Python Νικόλαος Ζ. Ζάχαρης Αναπληρωτής

Διαβάστε περισσότερα

Επιλέξτε Σωστό ή Λάθος για καθένα από τα παρακάτω:

Επιλέξτε Σωστό ή Λάθος για καθένα από τα παρακάτω: Επιλέξτε Σωστό ή Λάθος για καθένα από τα παρακάτω: 1ο ΓΕΛ Καστοριάς Βασικές Έννοιες Αλγορίθμων Δομή Ακολουθίας (κεφ. 2 και 7 σχολικού βιβλίου) 1. Οι μεταβλητές αντιστοιχίζονται από τον μεταγλωττιστή κάθε

Διαβάστε περισσότερα

ΔΟΜΗΜΕΝΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Κεφάλαιο 8 : H γλώσσα προγραµµατισµού Pascal 1 ο Μέρος σηµειώσεων (Ενότητες 8.1 & 8.2 σχολικού βιβλίου)

ΔΟΜΗΜΕΝΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Κεφάλαιο 8 : H γλώσσα προγραµµατισµού Pascal 1 ο Μέρος σηµειώσεων (Ενότητες 8.1 & 8.2 σχολικού βιβλίου) ΔΟΜΗΜΕΝΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Κεφάλαιο 8 : H γλώσσα προγραµµατισµού Pascal 1 ο Μέρος σηµειώσεων (Ενότητες 8.1 & 8.2 σχολικού βιβλίου) 1. Εισαγωγή Χαρακτηριστικά της γλώσσας Τύποι δεδοµένων Γλώσσα προγραµµατισµού

Διαβάστε περισσότερα

Τμήμα Πληροφορικής & Επικοινωνιών Δρ. Θεόδωρος Γ. Λάντζος

Τμήμα Πληροφορικής & Επικοινωνιών Δρ. Θεόδωρος Γ. Λάντζος Τμήμα Πληροφορικής & Επικοινωνιών Δρ. Θεόδωρος Γ. Λάντζος http://www.teiser.gr/icd/staff/lantzos lantzos@teiser.gr 1 Πώς δημιουργούμε πρόγραμμα Η/Υ; 1. Ανάλυση του προβλήματος 2. Επινόηση & Σχεδιασμός

Διαβάστε περισσότερα

K24 Ψηφιακά Ηλεκτρονικά 4: Σχεδίαση Συνδυαστικών Κυκλωμάτων

K24 Ψηφιακά Ηλεκτρονικά 4: Σχεδίαση Συνδυαστικών Κυκλωμάτων K24 Ψηφιακά Ηλεκτρονικά 4: Σχεδίαση Συνδυαστικών Κυκλωμάτων TEI Πελοποννήσου Σχολή Τεχνολογικών Εφαρμογών Τμήμα Μηχανικών Πληροφορικής ΤΕ ΤΕΧΝΟΛΟΓΙΚΟ Περιεχόμενα 1 2 3 4 Ένα ψηφιακό κύκλωμα με n εισόδους

Διαβάστε περισσότερα

ΗΥ Λογική. Διδάσκων: Δημήτρης Πλεξουσάκης Καθηγητής

ΗΥ Λογική. Διδάσκων: Δημήτρης Πλεξουσάκης Καθηγητής ΗΥ 180 - Λογική Διδάσκων: Καθηγητής E-mail: dp@csd.uoc.gr Ώρες διδασκαλίας: Δευτέρα, Τετάρτη 4-6 μμ, Αμφ. Β Ώρες φροντιστηρίου: Πέμπτη 4-6 μμ, Αμφ. Β Ώρες γραφείου: Δευτέρα, Τετάρτη 2-4 μμ, Κ.307 Web site:

Διαβάστε περισσότερα

Πρόταση. Αληθείς Προτάσεις

Πρόταση. Αληθείς Προτάσεις Βασικές έννοιες της Λογικής 1 Πρόταση Στην καθημερινή μας ομιλία χρησιμοποιούμε εκφράσεις όπως: P1: «Καλή σταδιοδρομία» P2: «Ο Όλυμπος είναι το ψηλότερο βουνό της Ελλάδας» P3: «Η Θάσος είναι το μεγαλύτερο

Διαβάστε περισσότερα

10. Με πόσους και ποιους τρόπους μπορεί να αναπαρασταθεί ένα πρόβλημα; 11. Περιγράψτε τα τρία στάδια αντιμετώπισης ενός προβλήματος.

10. Με πόσους και ποιους τρόπους μπορεί να αναπαρασταθεί ένα πρόβλημα; 11. Περιγράψτε τα τρία στάδια αντιμετώπισης ενός προβλήματος. 1. Δώστε τον ορισμό του προβλήματος. 2. Σι εννοούμε με τον όρο επίλυση ενός προβλήματος; 3. Σο πρόβλημα του 2000. 4. Σι εννοούμε με τον όρο κατανόηση προβλήματος; 5. Σι ονομάζουμε χώρο προβλήματος; 6.

Διαβάστε περισσότερα

Δομημένος Προγραμματισμός. Τμήμα Επιχειρηματικού Σχεδιασμού και Πληροφοριακών Συστημάτων

Δομημένος Προγραμματισμός. Τμήμα Επιχειρηματικού Σχεδιασμού και Πληροφοριακών Συστημάτων Δομημένος Προγραμματισμός Τμήμα Επιχειρηματικού Σχεδιασμού και Πληροφοριακών Συστημάτων www.bpis.teicrete.gr Τμήμα Επιχειρηματικού Σχεδιασμού και Πληροφοριακών Συστημάτων www.bpis.teicrete.gr 2 Νέο Πρόγραμμα

Διαβάστε περισσότερα

επανενεργοποιηθεί Βιομηχανικά Ηλεκτρονικά - Κ.Ι.Κυριακόπουλος Control Systems Laboratory

επανενεργοποιηθεί Βιομηχανικά Ηλεκτρονικά - Κ.Ι.Κυριακόπουλος Control Systems Laboratory Μετατροπέας Αναλογικού Σήµατος σε Ψηφιακό Ο δειγματολήπτης (S/H) παίρνει δείγματα του στιγμιαίου εύρους ενός σήματος και διατηρεί την τάση που αντιστοιχεί σταθερή, τροφοδοτώντας έναν κβαντιστή, μέχρι την

Διαβάστε περισσότερα

Εφαρμοσμένη Πληροφορική ΙΙ (Θ) Είσοδος/Έξοδος Μεταβλητές Τύποι Μεταβλητών Τελεστές και Προτεραιότητα Μετατροπές Μεταξύ Τύπων

Εφαρμοσμένη Πληροφορική ΙΙ (Θ) Είσοδος/Έξοδος Μεταβλητές Τύποι Μεταβλητών Τελεστές και Προτεραιότητα Μετατροπές Μεταξύ Τύπων Εφαρμοσμένη Πληροφορική ΙΙ (Θ) Είσοδος/Έξοδος Μεταβλητές Τύποι Μεταβλητών Τελεστές και Προτεραιότητα Μετατροπές Μεταξύ Τύπων 1 Είσοδος/Έξοδος Είσοδος/Έξοδος ανάλογα με τον τύπο του προγράμματος Πρόγραμμα

Διαβάστε περισσότερα

Εισαγωγή στον Προγραμματισμό

Εισαγωγή στον Προγραμματισμό Εισαγωγή στον Προγραμματισμό Έλεγχος Δημήτρης Μιχαήλ Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Ακ. Έτος 2012-2013 Σχεσιακοί Τελεστές και Ισότητας Ένα πρόγραμμα εκτός από αριθμητικές πράξεις

Διαβάστε περισσότερα

Εισαγωγή στην επιστήμη των υπολογιστών

Εισαγωγή στην επιστήμη των υπολογιστών Εισαγωγή στην επιστήμη των υπολογιστών Υπολογιστές και Δεδομένα Κεφάλαιο 3ο Αναπαράσταση Αριθμών www.di.uoa.gr/~organosi 1 Δεκαδικό και Δυαδικό Δεκαδικό σύστημα 2 3 Δεκαδικό και Δυαδικό Δυαδικό Σύστημα

Διαβάστε περισσότερα

Στοιχεία προτασιακής λογικής

Στοιχεία προτασιακής λογικής Σ. Κοσμαδάκης Στοιχεία προτασιακής λογικής Λογικές πράξεις and, or, not Για οποιεσδήποτε τιμές αλήθειας s, t στο σύνολο {true, false}, οι γνωστές πράξεις s and t, s or t, not s δίνουν αποτελέσματα στο

Διαβάστε περισσότερα

ΗΥ-150. Προγραμματισμός

ΗΥ-150. Προγραμματισμός ΗΥ-150 Εντολές Ελέγχου Ροής Σειριακή εκτέλεση εντολών Όλα τα προγράμματα «γράφονται» χρησιμοποιώντας 3 είδη εντολών: Σειριακές εντολές (sequential built in C) Εντολές απόφασης (if, if/else, switch) Περιλαμβάνει

Διαβάστε περισσότερα

ΠΑΙΓΝΙΑ Παιχνίδια Γενική Θεώρηση μεγιστοποιήσει την πιθανότητά

ΠΑΙΓΝΙΑ Παιχνίδια Γενική Θεώρηση μεγιστοποιήσει την πιθανότητά ΠΑΙΓΝΙΑ Παιχνίδια Γενική Θεώρηση: Έστω ότι έχουμε τους παίκτες Χ και Υ. Ο κάθε παίκτης, σε κάθε κίνηση που κάνει, προσπαθεί να μεγιστοποιήσει την πιθανότητά του να κερδίσει. Ο Χ σε κάθε κίνηση που κάνει

Διαβάστε περισσότερα

11. Ποιες είναι οι άμεσες συνέπειες της διαίρεσης;

11. Ποιες είναι οι άμεσες συνέπειες της διαίρεσης; 10. Τι ονομάζουμε Ευκλείδεια διαίρεση και τέλεια διαίρεση; Όταν δοθούν δύο φυσικοί αριθμοί Δ και δ, τότε υπάρχουν δύο άλλοι φυσικοί αριθμοί π και υ, έτσι ώστε να ισχύει: Δ = δ π + υ. Ο αριθμός Δ λέγεται

Διαβάστε περισσότερα