It is true that the machine contains 'pc-i440fx-4.0'. I am using Ubuntu18.04 and libvirt-4.0.0
This is probably a separate issue, but while updating the machine name neither "virsh define" or "virsh edit" updates the name to "pc".
"... A common problem seen when people edit the on-disk XML is a VM that simply vanishes the next time libvirtd is restarted after the edit. The VM disappears from libvirt because the XML has become invalid, after which libvirt can't do anything with it. "
Is it also true for virsh?
I also tried creating a new VM by "virsh dumpxml" and editing the xml with new "name" and "pc" and removed the "uuid" field and then "virsh define". virsh creates a new domain with UUID, but with machine='pc-i440fx-4.0'. Is it possible the virsh is using some configuration that resetting to predefined machine name?