Nothing is too abstract for a grown adult. It's expected that by that stage you will struggle through whatever is thrown at you. In fact the book list I've copied and pasted are the recommended texts from the "computer engineering 101" class.
The problem is that most mathematicians don't have more than a surface level working knowledge of set theory, because they don't think it's useful. It's even less useful for computer scientists (who use type theory any way).
With the exception of set theory, I've taken the classes you've mentioned, and while they've been very useful for electrical engineering, I don't believe they're useful for software engineering.