Two sets with exactly the same members are equal. In a transitive model, all actual members of its sets are available internally, so ambient extensionality gives the internal axiom as well.
Build well-founded coded sets over a single urelement with no members, retaining a distinct empty set. Use the unmodified membership language, so both and the empty set have the same empty extension and extensionality fails. Pairs, unions, separation and functional ranges have set codes, and pure natural numbers give infinity. For the unrestricted Axiom of power set, the power-set code must contain as well as all ordinary subset codes, since the atom is vacuously a subset of every object. Rank gives foundation. Thus the other ZF axioms hold.
Articles by others on the same topic
The Axiom of Extensionality is a fundamental principle in set theory, specifically within the framework of Zermelo-Fraenkel set theory (ZF), which is one of the most common foundational systems for mathematics. The axiom states that two sets are considered to be equal if and only if they have the same elements.