as far as I know, you can't define functions inside Table or a Do loop. Unless there is a hack to do it.
My main objective is to define and use a family of functions
Why not define the function F
itself to take its id as part of the definition? As a meta function. Like this
F[i_,Subscript[β_,i_],Subscript[b_,i_]]:=Subscript[β,i]+i+i*Subscript[b,i]
And now, if you wan to call $F_2$ for example, you do
i = 2;
F[i, Subscript[β, i], Subscript[b, i]]

If you want to make different definitions for each $F_i
, depending on the value of i
, you can do something like this
F[i_Integer, Subscript[β_, i_], Subscript[b_, i_]] := Module[{},
Which[i == 1, Subscript[β, i] + i + i*Subscript[b, i],
i == 2, Subscript[β, i] + 3*i - i*2*Subscript[b, i]
(*add more F_i special definitions here*)
]
]
Which looks like this

And now can do

and so on. btw, the sooner you avoid subscripted variable, the better it is. I never found any use for them and they cause more trouble than worth it.
F[i_][vars_]:=...
? $\endgroup$b
as the name of a vector. You can use thenb[[1]]
,b[[2]]
, etc. $\endgroup$