###########################################################################
    
class PorteLogique(object):
	'''
	Classe de base (vide) pour les portes logiques
	'''
	pass

class Non(PorteLogique):
	'''
	Porte logique (unaire) Non
	'''
	def __init__(self, entree):
		'''
		Initialisation de la porte logique unaire
		'''
		pass # A COMPLETER
        
	def evaluer(self):
		'''
		Evaluation: negation de l'entree binaire
		'''
		pass # A COMPLETER                

class PorteLogiqueBinaire(PorteLogique):
	'''
	Classe de base (abstraite) pour les portes logiques binaires
	'''
	def __init__(self, entree_1, entree_2):
		'''
		Initialisation de la porte logique binaire
		'''
		pass # A COMPLETER
        
class Ou(PorteLogiqueBinaire):
	'''
	Porte logique (binaire) Ou
	'''
	def evaluer(self):
		'''
		Evaluation de la porte logique Ou
		'''
		pass # A COMPLETER

class Et(PorteLogiqueBinaire):
	'''
	Porte logique (binaire) Et
	'''
	def evaluer(self):
		'''
		Evaluation de la porte logique Et
		'''
		pass # A COMPLETER

class Diff(PorteLogiqueBinaire):
	'''
	Porte logique (binaire) Diff
	'''
	def evaluer(self):
		'''
		Evaluation de la porte logique Diff: retourne vrai ssi e1 et e2 sont differents
		'''
                pass # A COMPLETER
    
###########################################################################
