‘Behind every great technology lies a genius’ — or in our case, several geniuses! This series of articles will introduce you to our Founders, three Professors from the University of Oxford and an accomplished Venture Capitalist. For the first article in our series, we welcome Professor Ian Horrocks to the hot seat.
“I had a slightly non-standard career for an academic. I did a Bachelor degree at the University of Manchester in computer science. I then worked there as a researcher for a few years in desktop publishing, which then got commercialised and I went off in a startup. I worked with the startup for several years before deciding that I wanted to do a PhD. I wanted to really get into some deeper research where I could spend a bit longer thinking about things.
Friends of mine from Manchester by this point were academics working on medical infomatics. The medical domain had been building organised vocabularies for a long time; prior to computer systems you can find medical texts where knowledge is categorised. The group at Manchester were building software systems to support this development of structured vocabularies. Nowadays we call them ontologies and knowledge graphs, but then those terms didn’t exist and they weren’t really thinking about semantics. It all sounded quite interesting, although I knew little or nothing about it at that point.
When I was working on my PhD I had the space to think about the underlying problems that we were trying to solve. I identified logic and description logic as being an appropriate underlying semantics. So I developed different algorithms that were based on logical reasoning rather than ad hoc processing and built a logic-based reasoning system, FaCT: ‘Fast Classification of Terminologies’. That’s how I got interested in logic-based semantics, ontologies and knowledge graph reasoning systems.
“Around the time of FaCT, various groups were looking to design/standardise an ontology language for use on the web. FaCT demonstrated that it was possible to design a language with rigorous logic-based semantics and at the same time provide practical reasoning services. The logic supported by FaCT was therefore taken as the formal basis for OWL, and the rest is history.”
“I think that the raison d’être is query answering over very large knowledge graphs. RDFox is this amalgam of formal rigour and performance.You don’t have to trust the system on the basis that ‘I tested it quite a lot and it never went wrong (so far)’; the algorithms used by RDFox have been formally proven to compute correct answers regardless of the query and regardless of the knowledge graph that you throw at it. On the other hand, a formal guarantee of correctness isn’t very useful if the performance is bad. Fortunately, RDFox also benefits from Boris’s design insights and brilliant software engineering, which allows it to be correct while at the same time incredibly fast — which is really hard to achieve!”
“Oh well, we will have a lovely office in the Bay Area, a hugely successful business!”
“I really like the configuration use cases. They combine a lot of the different features that we support: they often use large and complex vocabularies, for example parts catalogues, and they also require complex rules capturing component interactions, aggregated values, design constraints, etc. I think that this is a very convincing application of RDFox.”
“I think it is situational, and depends on how pressing the need is for the extra things that graphs give you. Graphs have a bunch of advantages but there’s inertia to switch. Graph is probably how relational databases should have been designed, but the technology wasn’t there. Graphs are more intuitive methods for storing and querying data. Rather than matching strings, everything is already connected. Graph is superior but requires fancy query processing technology to make it all work.
The graph name itself could be confusing for a lot of people who will think of a graph as an X and Y axis, whereas in this context it is a computer science term for a network. They are circle and arrow diagrams basically, which are a much more natural way of capturing data and knowledge than a relational database. To try and explain how the tables within relational databases join and how queries work is much harder and more complicated than explaining how graphs work, as they are more intuitive.”
“I guess scalability in the sense of going beyond a single machine, using cluster technology or offline storage. At the moment performance is limited across all systems which implement one of these methods. There is really no system that can bridge that gap effectively at the moment. We are working on it and from an academic perspective this poses a great challenge to ensuring a method for distribution which maintains the correctness and speed.”
“Do it now!!
It’s easier and more intuitive than you think and the move from relational programming shouldn’t be too grating. The SPARQL query language is not so different from SQL, so if you are familiar with SQL then the move shouldn’t be too hard.”
Thank you Ian for spending time in our hot seat, and providing us with an insight into your journey and thoughts on semantic technologies. The next article in the series will place the spotlight on Professor Boris Motik and reveal his passion for software engineering and all things RDFox.
If you are interested in Professor Ian Horrocks work on Semantic Reasoning, Description Logics, Ontologies and Rule Languages, here are some articles: