I have two protocols: Pen and InstrumentForProfessional. I\'d like to make any Pen to be an InstrumentForProfessional:
protoc
Here is how you require conformance to protocols in extensions.
extension Pen where Self: InstrumentForProfessional {}
The current way that you are doing makes the compiler think that you are doing inheritance, not protocol conformance.
Also note that let pen = ApplePen() as InstrumentForProfessional
doesn't make sense and won't compile.