There really isn't anything inaccurate in what I wrote. To be clearer, 'denumerable' means countable and 'nondenumerable' means uncountable. If I do not specify being infinite or not, as in "denumerably many symbols", then I am implying the possibility that there be infinitely many (but at most denumerably many). When I say nondenumerable, I just mean having the same cardinality as the set of real numbers.
The symbols I am talking about are the symbols of the language, which include as subsets a set of predicate letters (of arities I specified above--e.g. P_1, P_2,...), a set of function symbols (e.g. f_1,...) and variables (e.g. x_1,...) (with arities for the function symbols as indicated above), a set of sufficient logical constants (e.g. ~, &), and possibly {(,)}. (The parentheses aren't needed if we define our formation rules such that formulas are given by ordered pairs--e.g. (A & B) = <A,<&,B>>.)
Your comment "If you have a finite number of rules/symbols, but your inputs are of an arbitrary (and potentially infinite) length, then yes, you should be able to guarantee solvability/decidability (at least for languages in the Chomsky Language Hierarchy)" seems incorrect, depending on what you mean by the parenthetical remark. We know that classical first-order predicate logic with predicates of arity n>1 is undecidable. Specifically, it is only semidecidable (i.e. the decision problem for validity is semidecidable.)
I get the bounded runtime part, but how does that reduce to solving the halting problem (which is unsolvable)?