The textbooks I read say that it's obvious that associativity follows in a subgroup, but it doesn't explain why (since it's not obvious to me). We still have to check for closure under the operation, the identity element, and the inverse, but why does associativity immediately follow for a subgroup just because the group itself has it?
The associativity property is an algebraic identity that the group operation has to satisfy: $(ab)c=a(bc)$. Whether this identity is true for three fixed elements $a$, $b$, and $c$ does not depend on what set I put them in.
The other properties you mentioned are fundamentally different from associativity because they assert the existence of an object in the subgroup:
- The identity axiom means there exists an element in the subgroup that is the identity.
- The inverse axiom means there exists an inverse for every element in the subgroup.
- The closure axiom means if two elements are in the group then their product exists in the subgroup.
To fix ideas, suppose $G$ is a group and $H \subset G$. Then associativity says that for all $x,y,z \in G$, you have $x(yz) = (xy)z$. This is true for all elements of $G$; in particular it's true for all elements of $H \subset G$ (because they're also elements of $G$ and the operation is the same). Thus associativity follows automatically.
Suppose you choose three elements $a$, $b$ and $c$ from the subgroup. You compute $(a*b)*c$ and $a*(b*c)$ and ask whether they are the same element.
Now if you compute $(a*b)*c$ and $a*(b*c)$ in the original larger group, it is clear that you get the same thing, because that's what it means for the original group operation to be associative, and if it wasn't it wouldn't be called a group.
Now compute them in the subgroup instead? What do you get? Exactly the same thing in both cases, because that's what it means to compute in the subgroup -- you do the same operation as you would in the original group, and because the subgroup is closed under that operation you just happen to get an element of the subgroup out.
So it doesn't make any difference whether you compute in the subgroup or in the group -- it gives the same result in both cases. And since in the group you get the same result for $(a*b)*c$ as for $a*(b*c)$ this must also be the same result you get in the subgroup, in both cases.
- All mammals are animals.
- Cats are mammals.
- Therefore cats are animals.
Right? Well, that's the same argument as:
- All triplets $(a, b, c)$ of elements in the group satisfy associativity.
- All triplets $(a, b, c)$ of elements in the subgroup are in the group.
- Therefore all triplets $(a, b, c)$ of elements in the subgroup satisfy associativity.