human
I am working on the file "11-more-classes.ipynb".
The first task is:
We now have a simple class that can represent polynomials and multiply them together, whilst printing out a simple string form representing itself. This can obviously be extended to be much more useful.
Inheritance
As we can see above, building a complete class from scratch can be lengthy and tedious. If there is another class that does much of what we want, we can build on top of that. This is the idea behind inheritance. 
In the case of the Polynomial we declared that it started from the object class in the first line defining the class: class Polynomial(object). But we can build on any class, by replacing object with something else. Here we will build on the Polynomial class that we've started with.
A monomial is a polynomial whose leading term is simply 1. A monomial is a polynomial, and could be represented as such. However, we could build a class that knows that the leading term is always 1: there may be cases where we can take advantage of this additional simplicity.
We build a new monomial class as follows:
Can you write Python code for it?
 Here we want, we can build on top of that?
assistant
#Here we want, we can build on top of that.

class Monomial(Polynomial):
    """Representing a monomial, which is a polynomial with leading term 1."""
    
    def __init__(self, roots):
        self.roots = roots
        self.leading_term = 1
        self.order = len(roots)