Reasoning About Causal Models With Infinitely Many Variables