To add a comment to Florent:
<script type="text/javascript">
Array.prototype.nativeReduce = Array.prototype.reduce;
</script>
<script type="text/javascript" src="/path/to/prototype.js"></script>
Now you can call the native reduce method as follows:
var x = [];
x.nativeReduce(...);
If you cannot control the import order of scripts, then you iframecan do the trick to at least get access to the built-in function again reduce.
(function (document) {
var iframe = document.createElement("iframe");
iframe.src = "about:blank";
iframe.style.display = "none";
document.documentElement.appendChild(iframe);
var reduce = iframe.contentWindow.Array.prototype.reduce;
var arr = [1, 2, 3];
reduce.call(arr, function() { ... });
})(this.document);