Zero-error information theory