moved kernel derivation to Appendix