Don&#x27;t they have to be pure in order to be idempotent? If you might get a different virtual DOM even when props&#x2F;state are unchanged (not pure), then re-rendering the component might update the DOM even when props&#x2F;state are unchanged (not idempotent).