The conditional fallback is used for firewall configuration because we can't set default values. For general configuration of the service provider, the default value is set where it is possible.

This way if someone want to write his own authentication provider, he don't have to rewrite conditional fallback.

Examples:
https://github.com/tomaszsobczak/silex/blob/9a1457940fcdb1aebbdd21fd880ee9bd1c91d285/src/Silex/Provider/SecurityServiceProvider.php#L72
https://github.com/fabpot/Silex/blob/master/src/Silex/Provider/TwigServiceProvider.php#L33-L36