Memcomputing: A computing paradigm to store and process information on the same physical platform

Memcomputing is an emergent computing paradigm that employs two-terminal electronic devices with memory, namely, memristive, memcapacitive or meminductive systems, to store and process information at the same physical location. Complex networks of such devices can be considered as massively-parallel processors performing computation in an unconventional way. In this contribution, we discuss essential memcomputing criteria as well as several possible practical realizations of memcomputing based on nanoscale electronic devices with memory.