The following validation procedure is correct ? or has any problem and if so, why?

To validate model, I use the following:

\theta^{\text{ true}} : a give true model parameter

f(y|\theta) : a likelihood

\pi(\theta|y): a posterior for data y

- Draw datasets y_1,y_2,...,y_N from a likelihood f(y|\ \theta^{\text{ true}}) .
- Draw n posterior MCMC samples \theta_1(y_i),\theta_2(y_i),.....,\theta_n(y_i) from posterior \pi( \cdot|y_i) for each dataset y_i.
- Calculate a posterior mean \overline{\theta(y_i)}:=\sum_a \theta_a(y_i)/n for each datset y_i.
- Calculate the mean error \sum_i\{\overline{\theta(y_i)} - \theta^{\text{ true}}\}/N or a variance \sum_i\{ \overline{\theta(y_i)} - \sum_i\overline{\theta(y_i)}/N\}^2

**If this error is small, then can we conclude that our model is bias free?**

I observed that the error decreases as the number of samples n increases.

Note that

I also tried to implement the SBC, but it needs priors and if i chose more non-informative prior, then SBC sampling failed since non-informative prior generates odd datasets. If I chose a prior in which SBC histogram is good, then such model dose not fit to various datasets.