You need a translator, i.e. a middle host with dual IPv4/IPv6 stack that can convert an IPv4 packet to an IPv6 packet and v.v.
By the way, it's not just theoretical, it exists and it has been standardised, see https://nicmx.github.io/Jool/en/intro-xlat.html#ipv4ipv6-tra...