<div class="xblock xblock-public_view xblock-public_view-vertical" data-has-score="False" data-block-type="vertical" data-runtime-version="1" data-usage-id="block-v1:MITx+8.371.3x+2T2018+type@vertical+block@Information_theory_-_overview" data-runtime-class="LmsRuntime" data-graded="True" data-request-token="5c42ef8000b811f0b93716ffe7e42b4b" data-init="VerticalStudentView" data-course-id="course-v1:MITx+8.371.3x+2T2018">
<h2 class="hd hd-2 unit-title">Information theory - overview</h2>
<div class="vert-mod">
<div class="vert vert-0" data-id="block-v1:MITx+8.371.3x+2T2018+type@video+block@M3L20d">
<div class="xblock xblock-public_view xblock-public_view-video xmodule_display xmodule_VideoBlock" data-has-score="False" data-block-type="video" data-runtime-version="1" data-usage-id="block-v1:MITx+8.371.3x+2T2018+type@video+block@M3L20d" data-runtime-class="LmsRuntime" data-graded="True" data-request-token="5c42ef8000b811f0b93716ffe7e42b4b" data-init="XBlockToXModuleShim" data-course-id="course-v1:MITx+8.371.3x+2T2018">
<script type="json/xblock-args" class="xblock-json-init-args">
{"xmodule-type": "Video"}
</script>
<h3 class="hd hd-2">Information theory - overview</h3>
<div
id="video_M3L20d"
class="video closed"
data-metadata='{"transcriptAvailableTranslationsUrl": "/courses/course-v1:MITx+8.371.3x+2T2018/xblock/block-v1:MITx+8.371.3x+2T2018+type@video+block@M3L20d/handler/transcript/available_translations", "transcriptLanguages": {"en": "English"}, "start": 0.0, "speed": null, "publishCompletionUrl": "/courses/course-v1:MITx+8.371.3x+2T2018/xblock/block-v1:MITx+8.371.3x+2T2018+type@video+block@M3L20d/handler/publish_completion", "sources": [], "completionPercentage": 0.95, "ytApiUrl": "https://www.youtube.com/iframe_api", "autoplay": false, "ytMetadataEndpoint": "", "ytTestTimeout": 1500, "generalSpeed": 1.0, "completionEnabled": false, "lmsRootURL": "https://openlearninglibrary.mit.edu", "transcriptTranslationUrl": "/courses/course-v1:MITx+8.371.3x+2T2018/xblock/block-v1:MITx+8.371.3x+2T2018+type@video+block@M3L20d/handler/transcript/translation/__lang__", "poster": null, "captionDataDir": null, "duration": 0.0, "transcriptLanguage": "en", "streams": "1.00:cFh54lYIhWA", "saveStateEnabled": false, "saveStateUrl": "/courses/course-v1:MITx+8.371.3x+2T2018/xblock/block-v1:MITx+8.371.3x+2T2018+type@video+block@M3L20d/handler/xmodule_handler/save_user_state", "autohideHtml5": false, "end": 0.0, "showCaptions": "true", "autoAdvance": false, "savedVideoPosition": 0.0, "recordedYoutubeIsAvailable": true, "prioritizeHls": false}'
data-bumper-metadata='null'
data-autoadvance-enabled="False"
data-poster='null'
tabindex="-1"
>
<div class="focus_grabber first"></div>
<div class="tc-wrapper">
<div class="video-wrapper">
<span tabindex="0" class="spinner" aria-hidden="false" aria-label="Loading video player"></span>
<span tabindex="-1" class="btn-play fa fa-youtube-play fa-2x is-hidden" aria-hidden="true" aria-label="Play video"></span>
<div class="video-player-pre"></div>
<div class="video-player">
<div id="M3L20d"></div>
<h4 class="hd hd-4 video-error is-hidden">No playable video sources found.</h4>
<h4 class="hd hd-4 video-hls-error is-hidden">
Your browser does not support this video format. Try using a different browser.
</h4>
</div>
<div class="video-player-post"></div>
<div class="closed-captions"></div>
<div class="video-controls is-hidden">
<div>
<div class="vcr"><div class="vidtime">0:00 / 0:00</div></div>
<div class="secondary-controls"></div>
</div>
</div>
</div>
</div>
<div class="focus_grabber last"></div>
</div>
</div>
</div>
<div class="vert vert-1" data-id="block-v1:MITx+8.371.3x+2T2018+type@html+block@site_search_box4">
<div class="xblock xblock-public_view xblock-public_view-html xmodule_display xmodule_HtmlBlock" data-has-score="False" data-block-type="html" data-runtime-version="1" data-usage-id="block-v1:MITx+8.371.3x+2T2018+type@html+block@site_search_box4" data-runtime-class="LmsRuntime" data-graded="True" data-request-token="5c42ef8000b811f0b93716ffe7e42b4b" data-init="XBlockToXModuleShim" data-course-id="course-v1:MITx+8.371.3x+2T2018">
<script type="json/xblock-args" class="xblock-json-init-args">
{"xmodule-type": "HTMLModule"}
</script>
<span><a href="/asset-v1:MITx+8.371.3x+2T2018+type@asset+block/NONE" id="dummy_course_static_link" style="display:none"/><a href="/courses/course-v1:MITx+8.371.3x+2T2018/jump_to_id/NONE" id="dummy_jump_link" style="display:none"/><script type="text/javascript">
var add_site_search = function(){
course_static_url = $('#dummy_course_static_link').attr('href').replace('/NONE', '');
jump_to_url = $('#dummy_jump_link').attr('href').replace('/NONE', '');
if (typeof String.prototype.startsWith != 'function') {
// see below for better implementation!
String.prototype.startsWith = function (str){
return this.indexOf(str) === 0;
};
}
if(typeof(String.prototype.trim) === "undefined")
{
String.prototype.trim = function()
{
return String(this).replace(/^\s+|\s+$/g, '');
};
}
var lb = String.fromCharCode(60);
var rb = String.fromCharCode(62);
var amp = String.fromCharCode(38);
var rlb = rb + lb;
var mke = function(x){ return lb + x + rb; }
var search_module_url = "";
var get_search_module_ficus = function(){
var cid = $('div.xblock').data('course-id');
if (cid){
console.log("cid = ", cid);
// search_module_url = "/courses/course-v1:MITx+8.371.3x+2T2018/" + cid + "/courseware/welcome/Search_this_course/";
search_module_url = "/courses/course-v1:MITx+8.371.3x+2T2018/courseware/welcome/Search_this_course/"; // automatically rewritten
console.log("3. search_module_url = ", search_module_url);
return;
}
var course_root_link = $('span.nav-item-course').find('a').attr('href');
if (course_root_link){
console.log("course_root_link = ", course_root_link);
search_module_url = course_root_link.replace("course/", "courseware/welcome/Search_this_course/");
console.log("2. search_module_url = ", search_module_url);
return
}
console.log("cannot determine search module url");
}
var get_search_module = function(){
// find search this module link
if (!($('div.course-index').length)){
return get_search_module_ficus();
}
$('div.course-index').find('nav').find('a').each(function(){
if ($(this).text().trim().startsWith("Search this course")){
search_module_url = $(this).attr('href');
console.log("search_module_url = ", search_module_url);
}
});
}
var go_to_search = function(){
get_search_module();
var sterm = $('#site-search-box').val();
// new_url = jump_to_url + "/Search_this_module/?q=" + sterm;
new_url = search_module_url + "?q=" + sterm;
console.log("sterm = ", sterm, " ; going to ", new_url);
window.location.href = new_url;
}
if (!$('#site-search-box').length){
$("nav.courseware").find("ol").append(lb + "section style='float:right'" + rlb + "input size='20'"
+ " id='site-search-box'"
+ rlb + "img src='" + course_static_url
+ "/images_search_glass.png'/" + rlb + "/input" + rlb + "/section" + rb);
}
$("#site-search-box").keypress(function(event) {
if (event.which == 13) {
event.preventDefault();
go_to_search();
}
});
// $('#site-search-box').bind("enterKey", go_to_search);
var get = function(x){
return eval(x);
}
return {'course_static_url': course_static_url,
'jump_to_url': jump_to_url,
'go_to_search': go_to_search,
'get_search_module': get_search_module,
'get_search_module_ficus': get_search_module_ficus,
'get': get,
}
}
var the_site_search = add_site_search();
var add_fix_transcript = function(){
if ($('div.wrap-instructor-info').length==0){
return;
}
$('div.xblock-student_view-video').each(function(key, vblock_e){
var vblock = $(vblock_e);
var vuid = vblock.data('usage-id').split('@');
var vid;
if (vuid.length==1){
vuid = vblock.data('usage-id').split(';_')
vid = vuid[5];
}else{
vid = vuid[2];
}
var mfnpre = vid.split("_video",1)[0];
var mfnid = mfnpre; // no periods
mfnpre = mfnpre.replace('8_370', '8.370'); // periods in gh filename
var lb = String.fromCharCode(60);
var rb = String.fromCharCode(62);
var mke = function(x){ return lb + x + rb; }
var ftid = "fix_transcript_" + mfnid;
if (!$('#' + ftid).length){
var html = lb + "span id='" + ftid + "' style='float:right'" + rb + lb + "a href='#'" + rb;
html += "contribute transcript fix" + mke("/a") + mke("/span");
console.log("html = ", html);
vblock.after(html)
}
$('#' + ftid).click(function(){
var cst = $('ol.subtitles').find('li.current');
var cindex = Number(cst.data('index'));
var gurl;
if (mfnpre.endsWith('_cq_sol')){
gurl = "https://github.com/mitocw/content-mit-8370x-cq-sol-subtitles/blob/master/";
}else{
gurl = "https://github.com/mitocw/content-mit-8370x-subtitles/blob/master/";
}
gurl += mfnpre + ".txt#L" + String(cindex + 10 + 1);
console.log("going to ", gurl);
window.open(gurl, "MITx 8.370x subtitle source");
});
});
}
try{
add_fix_transcript();
}
catch(err){
console.log(err);
}
try{
var rb = String.fromCharCode(62);
setTimeout(function(){ $('.math' + rb + 'span').css("border-left-color","transparent"); }, 3000);
setTimeout(function(){ $('.math' + rb + 'span').css("border-left-color","transparent"); }, 8000);
}
catch(err){
console.log(err);
}
</script></span>
</div>
</div>
</div>
</div>
<div class="xblock xblock-public_view xblock-public_view-vertical" data-has-score="False" data-block-type="vertical" data-runtime-version="1" data-usage-id="block-v1:MITx+8.371.3x+2T2018+type@vertical+block@The_classical_data_compression_problem" data-runtime-class="LmsRuntime" data-graded="True" data-request-token="5c42ef8000b811f0b93716ffe7e42b4b" data-init="VerticalStudentView" data-course-id="course-v1:MITx+8.371.3x+2T2018">
<h2 class="hd hd-2 unit-title">The classical data compression problem</h2>
<div class="vert-mod">
<div class="vert vert-0" data-id="block-v1:MITx+8.371.3x+2T2018+type@video+block@M3L20e">
<div class="xblock xblock-public_view xblock-public_view-video xmodule_display xmodule_VideoBlock" data-has-score="False" data-block-type="video" data-runtime-version="1" data-usage-id="block-v1:MITx+8.371.3x+2T2018+type@video+block@M3L20e" data-runtime-class="LmsRuntime" data-graded="True" data-request-token="5c42ef8000b811f0b93716ffe7e42b4b" data-init="XBlockToXModuleShim" data-course-id="course-v1:MITx+8.371.3x+2T2018">
<script type="json/xblock-args" class="xblock-json-init-args">
{"xmodule-type": "Video"}
</script>
<h3 class="hd hd-2">The classical data compression problem</h3>
<div
id="video_M3L20e"
class="video closed"
data-metadata='{"transcriptAvailableTranslationsUrl": "/courses/course-v1:MITx+8.371.3x+2T2018/xblock/block-v1:MITx+8.371.3x+2T2018+type@video+block@M3L20e/handler/transcript/available_translations", "transcriptLanguages": {"en": "English"}, "start": 0.0, "speed": null, "publishCompletionUrl": "/courses/course-v1:MITx+8.371.3x+2T2018/xblock/block-v1:MITx+8.371.3x+2T2018+type@video+block@M3L20e/handler/publish_completion", "sources": [], "completionPercentage": 0.95, "ytApiUrl": "https://www.youtube.com/iframe_api", "autoplay": false, "ytMetadataEndpoint": "", "ytTestTimeout": 1500, "generalSpeed": 1.0, "completionEnabled": false, "lmsRootURL": "https://openlearninglibrary.mit.edu", "transcriptTranslationUrl": "/courses/course-v1:MITx+8.371.3x+2T2018/xblock/block-v1:MITx+8.371.3x+2T2018+type@video+block@M3L20e/handler/transcript/translation/__lang__", "poster": null, "captionDataDir": null, "duration": 0.0, "transcriptLanguage": "en", "streams": "1.00:bH2mRiJ4280", "saveStateEnabled": false, "saveStateUrl": "/courses/course-v1:MITx+8.371.3x+2T2018/xblock/block-v1:MITx+8.371.3x+2T2018+type@video+block@M3L20e/handler/xmodule_handler/save_user_state", "autohideHtml5": false, "end": 0.0, "showCaptions": "true", "autoAdvance": false, "savedVideoPosition": 0.0, "recordedYoutubeIsAvailable": true, "prioritizeHls": false}'
data-bumper-metadata='null'
data-autoadvance-enabled="False"
data-poster='null'
tabindex="-1"
>
<div class="focus_grabber first"></div>
<div class="tc-wrapper">
<div class="video-wrapper">
<span tabindex="0" class="spinner" aria-hidden="false" aria-label="Loading video player"></span>
<span tabindex="-1" class="btn-play fa fa-youtube-play fa-2x is-hidden" aria-hidden="true" aria-label="Play video"></span>
<div class="video-player-pre"></div>
<div class="video-player">
<div id="M3L20e"></div>
<h4 class="hd hd-4 video-error is-hidden">No playable video sources found.</h4>
<h4 class="hd hd-4 video-hls-error is-hidden">
Your browser does not support this video format. Try using a different browser.
</h4>
</div>
<div class="video-player-post"></div>
<div class="closed-captions"></div>
<div class="video-controls is-hidden">
<div>
<div class="vcr"><div class="vidtime">0:00 / 0:00</div></div>
<div class="secondary-controls"></div>
</div>
</div>
</div>
</div>
<div class="focus_grabber last"></div>
</div>
</div>
</div>
<div class="vert vert-1" data-id="block-v1:MITx+8.371.3x+2T2018+type@html+block@site_search_box5">
<div class="xblock xblock-public_view xblock-public_view-html xmodule_display xmodule_HtmlBlock" data-has-score="False" data-block-type="html" data-runtime-version="1" data-usage-id="block-v1:MITx+8.371.3x+2T2018+type@html+block@site_search_box5" data-runtime-class="LmsRuntime" data-graded="True" data-request-token="5c42ef8000b811f0b93716ffe7e42b4b" data-init="XBlockToXModuleShim" data-course-id="course-v1:MITx+8.371.3x+2T2018">
<script type="json/xblock-args" class="xblock-json-init-args">
{"xmodule-type": "HTMLModule"}
</script>
<span><a href="/asset-v1:MITx+8.371.3x+2T2018+type@asset+block/NONE" id="dummy_course_static_link" style="display:none"/><a href="/courses/course-v1:MITx+8.371.3x+2T2018/jump_to_id/NONE" id="dummy_jump_link" style="display:none"/><script type="text/javascript">
var add_site_search = function(){
course_static_url = $('#dummy_course_static_link').attr('href').replace('/NONE', '');
jump_to_url = $('#dummy_jump_link').attr('href').replace('/NONE', '');
if (typeof String.prototype.startsWith != 'function') {
// see below for better implementation!
String.prototype.startsWith = function (str){
return this.indexOf(str) === 0;
};
}
if(typeof(String.prototype.trim) === "undefined")
{
String.prototype.trim = function()
{
return String(this).replace(/^\s+|\s+$/g, '');
};
}
var lb = String.fromCharCode(60);
var rb = String.fromCharCode(62);
var amp = String.fromCharCode(38);
var rlb = rb + lb;
var mke = function(x){ return lb + x + rb; }
var search_module_url = "";
var get_search_module_ficus = function(){
var cid = $('div.xblock').data('course-id');
if (cid){
console.log("cid = ", cid);
// search_module_url = "/courses/course-v1:MITx+8.371.3x+2T2018/" + cid + "/courseware/welcome/Search_this_course/";
search_module_url = "/courses/course-v1:MITx+8.371.3x+2T2018/courseware/welcome/Search_this_course/"; // automatically rewritten
console.log("3. search_module_url = ", search_module_url);
return;
}
var course_root_link = $('span.nav-item-course').find('a').attr('href');
if (course_root_link){
console.log("course_root_link = ", course_root_link);
search_module_url = course_root_link.replace("course/", "courseware/welcome/Search_this_course/");
console.log("2. search_module_url = ", search_module_url);
return
}
console.log("cannot determine search module url");
}
var get_search_module = function(){
// find search this module link
if (!($('div.course-index').length)){
return get_search_module_ficus();
}
$('div.course-index').find('nav').find('a').each(function(){
if ($(this).text().trim().startsWith("Search this course")){
search_module_url = $(this).attr('href');
console.log("search_module_url = ", search_module_url);
}
});
}
var go_to_search = function(){
get_search_module();
var sterm = $('#site-search-box').val();
// new_url = jump_to_url + "/Search_this_module/?q=" + sterm;
new_url = search_module_url + "?q=" + sterm;
console.log("sterm = ", sterm, " ; going to ", new_url);
window.location.href = new_url;
}
if (!$('#site-search-box').length){
$("nav.courseware").find("ol").append(lb + "section style='float:right'" + rlb + "input size='20'"
+ " id='site-search-box'"
+ rlb + "img src='" + course_static_url
+ "/images_search_glass.png'/" + rlb + "/input" + rlb + "/section" + rb);
}
$("#site-search-box").keypress(function(event) {
if (event.which == 13) {
event.preventDefault();
go_to_search();
}
});
// $('#site-search-box').bind("enterKey", go_to_search);
var get = function(x){
return eval(x);
}
return {'course_static_url': course_static_url,
'jump_to_url': jump_to_url,
'go_to_search': go_to_search,
'get_search_module': get_search_module,
'get_search_module_ficus': get_search_module_ficus,
'get': get,
}
}
var the_site_search = add_site_search();
var add_fix_transcript = function(){
if ($('div.wrap-instructor-info').length==0){
return;
}
$('div.xblock-student_view-video').each(function(key, vblock_e){
var vblock = $(vblock_e);
var vuid = vblock.data('usage-id').split('@');
var vid;
if (vuid.length==1){
vuid = vblock.data('usage-id').split(';_')
vid = vuid[5];
}else{
vid = vuid[2];
}
var mfnpre = vid.split("_video",1)[0];
var mfnid = mfnpre; // no periods
mfnpre = mfnpre.replace('8_370', '8.370'); // periods in gh filename
var lb = String.fromCharCode(60);
var rb = String.fromCharCode(62);
var mke = function(x){ return lb + x + rb; }
var ftid = "fix_transcript_" + mfnid;
if (!$('#' + ftid).length){
var html = lb + "span id='" + ftid + "' style='float:right'" + rb + lb + "a href='#'" + rb;
html += "contribute transcript fix" + mke("/a") + mke("/span");
console.log("html = ", html);
vblock.after(html)
}
$('#' + ftid).click(function(){
var cst = $('ol.subtitles').find('li.current');
var cindex = Number(cst.data('index'));
var gurl;
if (mfnpre.endsWith('_cq_sol')){
gurl = "https://github.com/mitocw/content-mit-8370x-cq-sol-subtitles/blob/master/";
}else{
gurl = "https://github.com/mitocw/content-mit-8370x-subtitles/blob/master/";
}
gurl += mfnpre + ".txt#L" + String(cindex + 10 + 1);
console.log("going to ", gurl);
window.open(gurl, "MITx 8.370x subtitle source");
});
});
}
try{
add_fix_transcript();
}
catch(err){
console.log(err);
}
try{
var rb = String.fromCharCode(62);
setTimeout(function(){ $('.math' + rb + 'span').css("border-left-color","transparent"); }, 3000);
setTimeout(function(){ $('.math' + rb + 'span').css("border-left-color","transparent"); }, 8000);
}
catch(err){
console.log(err);
}
</script></span>
</div>
</div>
</div>
</div>
<div class="xblock xblock-public_view xblock-public_view-vertical" data-has-score="False" data-block-type="vertical" data-runtime-version="1" data-usage-id="block-v1:MITx+8.371.3x+2T2018+type@vertical+block@Shannons_noiseless_coding_theorem_and_the_Shannon_entropy" data-runtime-class="LmsRuntime" data-graded="True" data-request-token="5c42ef8000b811f0b93716ffe7e42b4b" data-init="VerticalStudentView" data-course-id="course-v1:MITx+8.371.3x+2T2018">
<h2 class="hd hd-2 unit-title">Shannon's noiseless coding theorem and the Shannon entropy</h2>
<div class="vert-mod">
<div class="vert vert-0" data-id="block-v1:MITx+8.371.3x+2T2018+type@video+block@M3L20f">
<div class="xblock xblock-public_view xblock-public_view-video xmodule_display xmodule_VideoBlock" data-has-score="False" data-block-type="video" data-runtime-version="1" data-usage-id="block-v1:MITx+8.371.3x+2T2018+type@video+block@M3L20f" data-runtime-class="LmsRuntime" data-graded="True" data-request-token="5c42ef8000b811f0b93716ffe7e42b4b" data-init="XBlockToXModuleShim" data-course-id="course-v1:MITx+8.371.3x+2T2018">
<script type="json/xblock-args" class="xblock-json-init-args">
{"xmodule-type": "Video"}
</script>
<h3 class="hd hd-2">Shannon's noiseless coding theorem and the Shannon entropy</h3>
<div
id="video_M3L20f"
class="video closed"
data-metadata='{"transcriptAvailableTranslationsUrl": "/courses/course-v1:MITx+8.371.3x+2T2018/xblock/block-v1:MITx+8.371.3x+2T2018+type@video+block@M3L20f/handler/transcript/available_translations", "transcriptLanguages": {"en": "English"}, "start": 0.0, "speed": null, "publishCompletionUrl": "/courses/course-v1:MITx+8.371.3x+2T2018/xblock/block-v1:MITx+8.371.3x+2T2018+type@video+block@M3L20f/handler/publish_completion", "sources": [], "completionPercentage": 0.95, "ytApiUrl": "https://www.youtube.com/iframe_api", "autoplay": false, "ytMetadataEndpoint": "", "ytTestTimeout": 1500, "generalSpeed": 1.0, "completionEnabled": false, "lmsRootURL": "https://openlearninglibrary.mit.edu", "transcriptTranslationUrl": "/courses/course-v1:MITx+8.371.3x+2T2018/xblock/block-v1:MITx+8.371.3x+2T2018+type@video+block@M3L20f/handler/transcript/translation/__lang__", "poster": null, "captionDataDir": null, "duration": 0.0, "transcriptLanguage": "en", "streams": "1.00:WD5CK0GqgVw", "saveStateEnabled": false, "saveStateUrl": "/courses/course-v1:MITx+8.371.3x+2T2018/xblock/block-v1:MITx+8.371.3x+2T2018+type@video+block@M3L20f/handler/xmodule_handler/save_user_state", "autohideHtml5": false, "end": 0.0, "showCaptions": "true", "autoAdvance": false, "savedVideoPosition": 0.0, "recordedYoutubeIsAvailable": true, "prioritizeHls": false}'
data-bumper-metadata='null'
data-autoadvance-enabled="False"
data-poster='null'
tabindex="-1"
>
<div class="focus_grabber first"></div>
<div class="tc-wrapper">
<div class="video-wrapper">
<span tabindex="0" class="spinner" aria-hidden="false" aria-label="Loading video player"></span>
<span tabindex="-1" class="btn-play fa fa-youtube-play fa-2x is-hidden" aria-hidden="true" aria-label="Play video"></span>
<div class="video-player-pre"></div>
<div class="video-player">
<div id="M3L20f"></div>
<h4 class="hd hd-4 video-error is-hidden">No playable video sources found.</h4>
<h4 class="hd hd-4 video-hls-error is-hidden">
Your browser does not support this video format. Try using a different browser.
</h4>
</div>
<div class="video-player-post"></div>
<div class="closed-captions"></div>
<div class="video-controls is-hidden">
<div>
<div class="vcr"><div class="vidtime">0:00 / 0:00</div></div>
<div class="secondary-controls"></div>
</div>
</div>
</div>
</div>
<div class="focus_grabber last"></div>
</div>
</div>
</div>
<div class="vert vert-1" data-id="block-v1:MITx+8.371.3x+2T2018+type@html+block@site_search_box6">
<div class="xblock xblock-public_view xblock-public_view-html xmodule_display xmodule_HtmlBlock" data-has-score="False" data-block-type="html" data-runtime-version="1" data-usage-id="block-v1:MITx+8.371.3x+2T2018+type@html+block@site_search_box6" data-runtime-class="LmsRuntime" data-graded="True" data-request-token="5c42ef8000b811f0b93716ffe7e42b4b" data-init="XBlockToXModuleShim" data-course-id="course-v1:MITx+8.371.3x+2T2018">
<script type="json/xblock-args" class="xblock-json-init-args">
{"xmodule-type": "HTMLModule"}
</script>
<span><a href="/asset-v1:MITx+8.371.3x+2T2018+type@asset+block/NONE" id="dummy_course_static_link" style="display:none"/><a href="/courses/course-v1:MITx+8.371.3x+2T2018/jump_to_id/NONE" id="dummy_jump_link" style="display:none"/><script type="text/javascript">
var add_site_search = function(){
course_static_url = $('#dummy_course_static_link').attr('href').replace('/NONE', '');
jump_to_url = $('#dummy_jump_link').attr('href').replace('/NONE', '');
if (typeof String.prototype.startsWith != 'function') {
// see below for better implementation!
String.prototype.startsWith = function (str){
return this.indexOf(str) === 0;
};
}
if(typeof(String.prototype.trim) === "undefined")
{
String.prototype.trim = function()
{
return String(this).replace(/^\s+|\s+$/g, '');
};
}
var lb = String.fromCharCode(60);
var rb = String.fromCharCode(62);
var amp = String.fromCharCode(38);
var rlb = rb + lb;
var mke = function(x){ return lb + x + rb; }
var search_module_url = "";
var get_search_module_ficus = function(){
var cid = $('div.xblock').data('course-id');
if (cid){
console.log("cid = ", cid);
// search_module_url = "/courses/course-v1:MITx+8.371.3x+2T2018/" + cid + "/courseware/welcome/Search_this_course/";
search_module_url = "/courses/course-v1:MITx+8.371.3x+2T2018/courseware/welcome/Search_this_course/"; // automatically rewritten
console.log("3. search_module_url = ", search_module_url);
return;
}
var course_root_link = $('span.nav-item-course').find('a').attr('href');
if (course_root_link){
console.log("course_root_link = ", course_root_link);
search_module_url = course_root_link.replace("course/", "courseware/welcome/Search_this_course/");
console.log("2. search_module_url = ", search_module_url);
return
}
console.log("cannot determine search module url");
}
var get_search_module = function(){
// find search this module link
if (!($('div.course-index').length)){
return get_search_module_ficus();
}
$('div.course-index').find('nav').find('a').each(function(){
if ($(this).text().trim().startsWith("Search this course")){
search_module_url = $(this).attr('href');
console.log("search_module_url = ", search_module_url);
}
});
}
var go_to_search = function(){
get_search_module();
var sterm = $('#site-search-box').val();
// new_url = jump_to_url + "/Search_this_module/?q=" + sterm;
new_url = search_module_url + "?q=" + sterm;
console.log("sterm = ", sterm, " ; going to ", new_url);
window.location.href = new_url;
}
if (!$('#site-search-box').length){
$("nav.courseware").find("ol").append(lb + "section style='float:right'" + rlb + "input size='20'"
+ " id='site-search-box'"
+ rlb + "img src='" + course_static_url
+ "/images_search_glass.png'/" + rlb + "/input" + rlb + "/section" + rb);
}
$("#site-search-box").keypress(function(event) {
if (event.which == 13) {
event.preventDefault();
go_to_search();
}
});
// $('#site-search-box').bind("enterKey", go_to_search);
var get = function(x){
return eval(x);
}
return {'course_static_url': course_static_url,
'jump_to_url': jump_to_url,
'go_to_search': go_to_search,
'get_search_module': get_search_module,
'get_search_module_ficus': get_search_module_ficus,
'get': get,
}
}
var the_site_search = add_site_search();
var add_fix_transcript = function(){
if ($('div.wrap-instructor-info').length==0){
return;
}
$('div.xblock-student_view-video').each(function(key, vblock_e){
var vblock = $(vblock_e);
var vuid = vblock.data('usage-id').split('@');
var vid;
if (vuid.length==1){
vuid = vblock.data('usage-id').split(';_')
vid = vuid[5];
}else{
vid = vuid[2];
}
var mfnpre = vid.split("_video",1)[0];
var mfnid = mfnpre; // no periods
mfnpre = mfnpre.replace('8_370', '8.370'); // periods in gh filename
var lb = String.fromCharCode(60);
var rb = String.fromCharCode(62);
var mke = function(x){ return lb + x + rb; }
var ftid = "fix_transcript_" + mfnid;
if (!$('#' + ftid).length){
var html = lb + "span id='" + ftid + "' style='float:right'" + rb + lb + "a href='#'" + rb;
html += "contribute transcript fix" + mke("/a") + mke("/span");
console.log("html = ", html);
vblock.after(html)
}
$('#' + ftid).click(function(){
var cst = $('ol.subtitles').find('li.current');
var cindex = Number(cst.data('index'));
var gurl;
if (mfnpre.endsWith('_cq_sol')){
gurl = "https://github.com/mitocw/content-mit-8370x-cq-sol-subtitles/blob/master/";
}else{
gurl = "https://github.com/mitocw/content-mit-8370x-subtitles/blob/master/";
}
gurl += mfnpre + ".txt#L" + String(cindex + 10 + 1);
console.log("going to ", gurl);
window.open(gurl, "MITx 8.370x subtitle source");
});
});
}
try{
add_fix_transcript();
}
catch(err){
console.log(err);
}
try{
var rb = String.fromCharCode(62);
setTimeout(function(){ $('.math' + rb + 'span').css("border-left-color","transparent"); }, 3000);
setTimeout(function(){ $('.math' + rb + 'span').css("border-left-color","transparent"); }, 8000);
}
catch(err){
console.log(err);
}
</script></span>
</div>
</div>
</div>
</div>
<div class="xblock xblock-public_view xblock-public_view-vertical" data-has-score="False" data-block-type="vertical" data-runtime-version="1" data-usage-id="block-v1:MITx+8.371.3x+2T2018+type@vertical+block@CQ_Noiseless_coding_theorem" data-runtime-class="LmsRuntime" data-graded="True" data-request-token="5c42ef8000b811f0b93716ffe7e42b4b" data-init="VerticalStudentView" data-course-id="course-v1:MITx+8.371.3x+2T2018">
<h2 class="hd hd-2 unit-title">CQ: Noiseless coding theorem</h2>
<div class="vert-mod">
<div class="vert vert-0" data-id="block-v1:MITx+8.371.3x+2T2018+type@problem+block@cq_M2L20_Noiseless_coding_theorem">
<div class="xblock xblock-public_view xblock-public_view-problem xmodule_display xmodule_ProblemBlock" data-has-score="True" data-block-type="problem" data-runtime-version="1" data-usage-id="block-v1:MITx+8.371.3x+2T2018+type@problem+block@cq_M2L20_Noiseless_coding_theorem" data-runtime-class="LmsRuntime" data-graded="True" data-request-token="5c42ef8000b811f0b93716ffe7e42b4b" data-init="XBlockToXModuleShim" data-course-id="course-v1:MITx+8.371.3x+2T2018">
<script type="json/xblock-args" class="xblock-json-init-args">
{"xmodule-type": "Problem"}
</script>
<div id="problem_cq_M2L20_Noiseless_coding_theorem" class="problems-wrapper" role="group"
aria-labelledby="cq_M2L20_Noiseless_coding_theorem-problem-title"
data-problem-id="block-v1:MITx+8.371.3x+2T2018+type@problem+block@cq_M2L20_Noiseless_coding_theorem" data-url="/courses/course-v1:MITx+8.371.3x+2T2018/xblock/block-v1:MITx+8.371.3x+2T2018+type@problem+block@cq_M2L20_Noiseless_coding_theorem/handler/xmodule_handler"
data-problem-score="0"
data-problem-total-possible="1"
data-attempts-used="0"
data-content="
<h3 class="hd hd-3 problem-header" id="cq_M2L20_Noiseless_coding_theorem-problem-title" aria-describedby="block-v1:MITx+8.371.3x+2T2018+type@problem+block@cq_M2L20_Noiseless_coding_theorem-problem-progress" tabindex="-1">
Noiseless coding theorem
</h3>
<div class="problem-progress" id="block-v1:MITx+8.371.3x+2T2018+type@problem+block@cq_M2L20_Noiseless_coding_theorem-problem-progress"></div>
<div class="problem">
<div>
<p>
This is a concept question, provided to check your understanding of the previous lecture video clips. </p>
<p>
Which of the following are true? </p>
<p>
<div class="wrapper-problem-response" tabindex="-1" aria-label="Question 1" role="group"><div class="choicegroup capa_inputtype" id="inputtype_cq_M2L20_Noiseless_coding_theorem_2_1">
<fieldset aria-describedby="status_cq_M2L20_Noiseless_coding_theorem_2_1">
<div class="field">
<input type="checkbox" name="input_cq_M2L20_Noiseless_coding_theorem_2_1[]" id="input_cq_M2L20_Noiseless_coding_theorem_2_1_choice_0" class="field-input input-checkbox" value="choice_0"/><label id="cq_M2L20_Noiseless_coding_theorem_2_1-choice_0-label" for="input_cq_M2L20_Noiseless_coding_theorem_2_1_choice_0" class="response-label field-label label-inline" aria-describedby="status_cq_M2L20_Noiseless_coding_theorem_2_1">
<text>Strings of length [mathjaxinline]n[/mathjaxinline] sampled from iid samples from the uniform distribution over [mathjaxinline]\{ 1,\ldots ,d\}[/mathjaxinline] may not be compressed below [mathjaxinline]n \log d[/mathjaxinline] bits.</text>
</label>
</div>
<div class="field">
<input type="checkbox" name="input_cq_M2L20_Noiseless_coding_theorem_2_1[]" id="input_cq_M2L20_Noiseless_coding_theorem_2_1_choice_1" class="field-input input-checkbox" value="choice_1"/><label id="cq_M2L20_Noiseless_coding_theorem_2_1-choice_1-label" for="input_cq_M2L20_Noiseless_coding_theorem_2_1_choice_1" class="response-label field-label label-inline" aria-describedby="status_cq_M2L20_Noiseless_coding_theorem_2_1">
<text>Entropy is a concave function.</text>
</label>
</div>
<div class="field">
<input type="checkbox" name="input_cq_M2L20_Noiseless_coding_theorem_2_1[]" id="input_cq_M2L20_Noiseless_coding_theorem_2_1_choice_2" class="field-input input-checkbox" value="choice_2"/><label id="cq_M2L20_Noiseless_coding_theorem_2_1-choice_2-label" for="input_cq_M2L20_Noiseless_coding_theorem_2_1_choice_2" class="response-label field-label label-inline" aria-describedby="status_cq_M2L20_Noiseless_coding_theorem_2_1">
<text>In Shannon's noiseless coding theorem, the probability of error decays only polynomially in the length of the message.</text>
</label>
</div>
<div class="field">
<input type="checkbox" name="input_cq_M2L20_Noiseless_coding_theorem_2_1[]" id="input_cq_M2L20_Noiseless_coding_theorem_2_1_choice_3" class="field-input input-checkbox" value="choice_3"/><label id="cq_M2L20_Noiseless_coding_theorem_2_1-choice_3-label" for="input_cq_M2L20_Noiseless_coding_theorem_2_1_choice_3" class="response-label field-label label-inline" aria-describedby="status_cq_M2L20_Noiseless_coding_theorem_2_1">
<text>Entropy is always positive.</text>
</label>
</div>
<span id="answer_cq_M2L20_Noiseless_coding_theorem_2_1"/>
</fieldset>
<div class="indicator-container">
<span class="status unanswered" id="status_cq_M2L20_Noiseless_coding_theorem_2_1" data-tooltip="Not yet answered.">
<span class="sr">unanswered</span><span class="status-icon" aria-hidden="true"/>
</span>
</div>
</div></div>
</p>
</div>
<div class="action">
<input type="hidden" name="problem_id" value="Noiseless coding theorem" />
<div class="submit-attempt-container">
<button type="button" class="submit btn-brand" data-submitting="Submitting" data-value="Submit" data-should-enable-submit-button="True" aria-describedby="submission_feedback_cq_M2L20_Noiseless_coding_theorem" >
<span class="submit-label">Submit</span>
</button>
<div class="submission-feedback" id="submission_feedback_cq_M2L20_Noiseless_coding_theorem">
<span class="sr">Some problems have options such as save, reset, hints, or show answer. These options follow the Submit button.</span>
</div>
</div>
<div class="problem-action-buttons-wrapper">
<span class="problem-action-button-wrapper">
<button type="button" class="save problem-action-btn btn-default btn-small" data-value="Save">
<span class="icon fa fa-floppy-o" aria-hidden="true"></span>
<span aria-hidden="true">Save</span>
<span class="sr">Save your answer</span>
</button>
</span>
</div>
</div>
<div class="notification warning notification-gentle-alert
is-hidden"
tabindex="-1">
<span class="icon fa fa-exclamation-circle" aria-hidden="true"></span>
<span class="notification-message" aria-describedby="cq_M2L20_Noiseless_coding_theorem-problem-title">
</span>
<div class="notification-btn-wrapper">
<button type="button" class="btn btn-default btn-small notification-btn review-btn sr">Review</button>
</div>
</div>
<div class="notification warning notification-save
is-hidden"
tabindex="-1">
<span class="icon fa fa-save" aria-hidden="true"></span>
<span class="notification-message" aria-describedby="cq_M2L20_Noiseless_coding_theorem-problem-title">None
</span>
<div class="notification-btn-wrapper">
<button type="button" class="btn btn-default btn-small notification-btn review-btn sr">Review</button>
</div>
</div>
<div class="notification general notification-show-answer
is-hidden"
tabindex="-1">
<span class="icon fa fa-info-circle" aria-hidden="true"></span>
<span class="notification-message" aria-describedby="cq_M2L20_Noiseless_coding_theorem-problem-title">Answers are displayed within the problem
</span>
<div class="notification-btn-wrapper">
<button type="button" class="btn btn-default btn-small notification-btn review-btn sr">Review</button>
</div>
</div>
</div>
"
data-graded="True">
<p class="loading-spinner">
<i class="fa fa-spinner fa-pulse fa-2x fa-fw"></i>
<span class="sr">Loading…</span>
</p>
</div>
</div>
</div>
<div class="vert vert-1" data-id="block-v1:MITx+8.371.3x+2T2018+type@html+block@site_search_box1">
<div class="xblock xblock-public_view xblock-public_view-html xmodule_display xmodule_HtmlBlock" data-has-score="False" data-block-type="html" data-runtime-version="1" data-usage-id="block-v1:MITx+8.371.3x+2T2018+type@html+block@site_search_box1" data-runtime-class="LmsRuntime" data-graded="True" data-request-token="5c42ef8000b811f0b93716ffe7e42b4b" data-init="XBlockToXModuleShim" data-course-id="course-v1:MITx+8.371.3x+2T2018">
<script type="json/xblock-args" class="xblock-json-init-args">
{"xmodule-type": "HTMLModule"}
</script>
<span><a href="/asset-v1:MITx+8.371.3x+2T2018+type@asset+block/NONE" id="dummy_course_static_link" style="display:none"/><a href="/courses/course-v1:MITx+8.371.3x+2T2018/jump_to_id/NONE" id="dummy_jump_link" style="display:none"/><script type="text/javascript">
var add_site_search = function(){
course_static_url = $('#dummy_course_static_link').attr('href').replace('/NONE', '');
jump_to_url = $('#dummy_jump_link').attr('href').replace('/NONE', '');
if (typeof String.prototype.startsWith != 'function') {
// see below for better implementation!
String.prototype.startsWith = function (str){
return this.indexOf(str) === 0;
};
}
if(typeof(String.prototype.trim) === "undefined")
{
String.prototype.trim = function()
{
return String(this).replace(/^\s+|\s+$/g, '');
};
}
var lb = String.fromCharCode(60);
var rb = String.fromCharCode(62);
var amp = String.fromCharCode(38);
var rlb = rb + lb;
var mke = function(x){ return lb + x + rb; }
var search_module_url = "";
var get_search_module_ficus = function(){
var cid = $('div.xblock').data('course-id');
if (cid){
console.log("cid = ", cid);
// search_module_url = "/courses/course-v1:MITx+8.371.3x+2T2018/" + cid + "/courseware/welcome/Search_this_course/";
search_module_url = "/courses/course-v1:MITx+8.371.3x+2T2018/courseware/welcome/Search_this_course/"; // automatically rewritten
console.log("3. search_module_url = ", search_module_url);
return;
}
var course_root_link = $('span.nav-item-course').find('a').attr('href');
if (course_root_link){
console.log("course_root_link = ", course_root_link);
search_module_url = course_root_link.replace("course/", "courseware/welcome/Search_this_course/");
console.log("2. search_module_url = ", search_module_url);
return
}
console.log("cannot determine search module url");
}
var get_search_module = function(){
// find search this module link
if (!($('div.course-index').length)){
return get_search_module_ficus();
}
$('div.course-index').find('nav').find('a').each(function(){
if ($(this).text().trim().startsWith("Search this course")){
search_module_url = $(this).attr('href');
console.log("search_module_url = ", search_module_url);
}
});
}
var go_to_search = function(){
get_search_module();
var sterm = $('#site-search-box').val();
// new_url = jump_to_url + "/Search_this_module/?q=" + sterm;
new_url = search_module_url + "?q=" + sterm;
console.log("sterm = ", sterm, " ; going to ", new_url);
window.location.href = new_url;
}
if (!$('#site-search-box').length){
$("nav.courseware").find("ol").append(lb + "section style='float:right'" + rlb + "input size='20'"
+ " id='site-search-box'"
+ rlb + "img src='" + course_static_url
+ "/images_search_glass.png'/" + rlb + "/input" + rlb + "/section" + rb);
}
$("#site-search-box").keypress(function(event) {
if (event.which == 13) {
event.preventDefault();
go_to_search();
}
});
// $('#site-search-box').bind("enterKey", go_to_search);
var get = function(x){
return eval(x);
}
return {'course_static_url': course_static_url,
'jump_to_url': jump_to_url,
'go_to_search': go_to_search,
'get_search_module': get_search_module,
'get_search_module_ficus': get_search_module_ficus,
'get': get,
}
}
var the_site_search = add_site_search();
var add_fix_transcript = function(){
if ($('div.wrap-instructor-info').length==0){
return;
}
$('div.xblock-student_view-video').each(function(key, vblock_e){
var vblock = $(vblock_e);
var vuid = vblock.data('usage-id').split('@');
var vid;
if (vuid.length==1){
vuid = vblock.data('usage-id').split(';_')
vid = vuid[5];
}else{
vid = vuid[2];
}
var mfnpre = vid.split("_video",1)[0];
var mfnid = mfnpre; // no periods
mfnpre = mfnpre.replace('8_370', '8.370'); // periods in gh filename
var lb = String.fromCharCode(60);
var rb = String.fromCharCode(62);
var mke = function(x){ return lb + x + rb; }
var ftid = "fix_transcript_" + mfnid;
if (!$('#' + ftid).length){
var html = lb + "span id='" + ftid + "' style='float:right'" + rb + lb + "a href='#'" + rb;
html += "contribute transcript fix" + mke("/a") + mke("/span");
console.log("html = ", html);
vblock.after(html)
}
$('#' + ftid).click(function(){
var cst = $('ol.subtitles').find('li.current');
var cindex = Number(cst.data('index'));
var gurl;
if (mfnpre.endsWith('_cq_sol')){
gurl = "https://github.com/mitocw/content-mit-8370x-cq-sol-subtitles/blob/master/";
}else{
gurl = "https://github.com/mitocw/content-mit-8370x-subtitles/blob/master/";
}
gurl += mfnpre + ".txt#L" + String(cindex + 10 + 1);
console.log("going to ", gurl);
window.open(gurl, "MITx 8.370x subtitle source");
});
});
}
try{
add_fix_transcript();
}
catch(err){
console.log(err);
}
try{
var rb = String.fromCharCode(62);
setTimeout(function(){ $('.math' + rb + 'span').css("border-left-color","transparent"); }, 3000);
setTimeout(function(){ $('.math' + rb + 'span').css("border-left-color","transparent"); }, 8000);
}
catch(err){
console.log(err);
}
</script></span>
</div>
</div>
</div>
</div>
<div class="xblock xblock-public_view xblock-public_view-vertical" data-has-score="False" data-block-type="vertical" data-runtime-version="1" data-usage-id="block-v1:MITx+8.371.3x+2T2018+type@vertical+block@Proof_of_the_noiseless_coding_theorem_-_the_idea_of_typical_sequences" data-runtime-class="LmsRuntime" data-graded="True" data-request-token="5c42ef8000b811f0b93716ffe7e42b4b" data-init="VerticalStudentView" data-course-id="course-v1:MITx+8.371.3x+2T2018">
<h2 class="hd hd-2 unit-title">Proof of the noiseless coding theorem - the idea of typical sequences</h2>
<div class="vert-mod">
<div class="vert vert-0" data-id="block-v1:MITx+8.371.3x+2T2018+type@video+block@M3L20h">
<div class="xblock xblock-public_view xblock-public_view-video xmodule_display xmodule_VideoBlock" data-has-score="False" data-block-type="video" data-runtime-version="1" data-usage-id="block-v1:MITx+8.371.3x+2T2018+type@video+block@M3L20h" data-runtime-class="LmsRuntime" data-graded="True" data-request-token="5c42ef8000b811f0b93716ffe7e42b4b" data-init="XBlockToXModuleShim" data-course-id="course-v1:MITx+8.371.3x+2T2018">
<script type="json/xblock-args" class="xblock-json-init-args">
{"xmodule-type": "Video"}
</script>
<h3 class="hd hd-2">Proof of the noiseless coding theorem - the idea of typical sequences</h3>
<div
id="video_M3L20h"
class="video closed"
data-metadata='{"transcriptAvailableTranslationsUrl": "/courses/course-v1:MITx+8.371.3x+2T2018/xblock/block-v1:MITx+8.371.3x+2T2018+type@video+block@M3L20h/handler/transcript/available_translations", "transcriptLanguages": {"en": "English"}, "start": 0.0, "speed": null, "publishCompletionUrl": "/courses/course-v1:MITx+8.371.3x+2T2018/xblock/block-v1:MITx+8.371.3x+2T2018+type@video+block@M3L20h/handler/publish_completion", "sources": [], "completionPercentage": 0.95, "ytApiUrl": "https://www.youtube.com/iframe_api", "autoplay": false, "ytMetadataEndpoint": "", "ytTestTimeout": 1500, "generalSpeed": 1.0, "completionEnabled": false, "lmsRootURL": "https://openlearninglibrary.mit.edu", "transcriptTranslationUrl": "/courses/course-v1:MITx+8.371.3x+2T2018/xblock/block-v1:MITx+8.371.3x+2T2018+type@video+block@M3L20h/handler/transcript/translation/__lang__", "poster": null, "captionDataDir": null, "duration": 0.0, "transcriptLanguage": "en", "streams": "1.00:9JUdc3IgxP0", "saveStateEnabled": false, "saveStateUrl": "/courses/course-v1:MITx+8.371.3x+2T2018/xblock/block-v1:MITx+8.371.3x+2T2018+type@video+block@M3L20h/handler/xmodule_handler/save_user_state", "autohideHtml5": false, "end": 0.0, "showCaptions": "true", "autoAdvance": false, "savedVideoPosition": 0.0, "recordedYoutubeIsAvailable": true, "prioritizeHls": false}'
data-bumper-metadata='null'
data-autoadvance-enabled="False"
data-poster='null'
tabindex="-1"
>
<div class="focus_grabber first"></div>
<div class="tc-wrapper">
<div class="video-wrapper">
<span tabindex="0" class="spinner" aria-hidden="false" aria-label="Loading video player"></span>
<span tabindex="-1" class="btn-play fa fa-youtube-play fa-2x is-hidden" aria-hidden="true" aria-label="Play video"></span>
<div class="video-player-pre"></div>
<div class="video-player">
<div id="M3L20h"></div>
<h4 class="hd hd-4 video-error is-hidden">No playable video sources found.</h4>
<h4 class="hd hd-4 video-hls-error is-hidden">
Your browser does not support this video format. Try using a different browser.
</h4>
</div>
<div class="video-player-post"></div>
<div class="closed-captions"></div>
<div class="video-controls is-hidden">
<div>
<div class="vcr"><div class="vidtime">0:00 / 0:00</div></div>
<div class="secondary-controls"></div>
</div>
</div>
</div>
</div>
<div class="focus_grabber last"></div>
</div>
</div>
</div>
<div class="vert vert-1" data-id="block-v1:MITx+8.371.3x+2T2018+type@html+block@site_search_box7">
<div class="xblock xblock-public_view xblock-public_view-html xmodule_display xmodule_HtmlBlock" data-has-score="False" data-block-type="html" data-runtime-version="1" data-usage-id="block-v1:MITx+8.371.3x+2T2018+type@html+block@site_search_box7" data-runtime-class="LmsRuntime" data-graded="True" data-request-token="5c42ef8000b811f0b93716ffe7e42b4b" data-init="XBlockToXModuleShim" data-course-id="course-v1:MITx+8.371.3x+2T2018">
<script type="json/xblock-args" class="xblock-json-init-args">
{"xmodule-type": "HTMLModule"}
</script>
<span><a href="/asset-v1:MITx+8.371.3x+2T2018+type@asset+block/NONE" id="dummy_course_static_link" style="display:none"/><a href="/courses/course-v1:MITx+8.371.3x+2T2018/jump_to_id/NONE" id="dummy_jump_link" style="display:none"/><script type="text/javascript">
var add_site_search = function(){
course_static_url = $('#dummy_course_static_link').attr('href').replace('/NONE', '');
jump_to_url = $('#dummy_jump_link').attr('href').replace('/NONE', '');
if (typeof String.prototype.startsWith != 'function') {
// see below for better implementation!
String.prototype.startsWith = function (str){
return this.indexOf(str) === 0;
};
}
if(typeof(String.prototype.trim) === "undefined")
{
String.prototype.trim = function()
{
return String(this).replace(/^\s+|\s+$/g, '');
};
}
var lb = String.fromCharCode(60);
var rb = String.fromCharCode(62);
var amp = String.fromCharCode(38);
var rlb = rb + lb;
var mke = function(x){ return lb + x + rb; }
var search_module_url = "";
var get_search_module_ficus = function(){
var cid = $('div.xblock').data('course-id');
if (cid){
console.log("cid = ", cid);
// search_module_url = "/courses/course-v1:MITx+8.371.3x+2T2018/" + cid + "/courseware/welcome/Search_this_course/";
search_module_url = "/courses/course-v1:MITx+8.371.3x+2T2018/courseware/welcome/Search_this_course/"; // automatically rewritten
console.log("3. search_module_url = ", search_module_url);
return;
}
var course_root_link = $('span.nav-item-course').find('a').attr('href');
if (course_root_link){
console.log("course_root_link = ", course_root_link);
search_module_url = course_root_link.replace("course/", "courseware/welcome/Search_this_course/");
console.log("2. search_module_url = ", search_module_url);
return
}
console.log("cannot determine search module url");
}
var get_search_module = function(){
// find search this module link
if (!($('div.course-index').length)){
return get_search_module_ficus();
}
$('div.course-index').find('nav').find('a').each(function(){
if ($(this).text().trim().startsWith("Search this course")){
search_module_url = $(this).attr('href');
console.log("search_module_url = ", search_module_url);
}
});
}
var go_to_search = function(){
get_search_module();
var sterm = $('#site-search-box').val();
// new_url = jump_to_url + "/Search_this_module/?q=" + sterm;
new_url = search_module_url + "?q=" + sterm;
console.log("sterm = ", sterm, " ; going to ", new_url);
window.location.href = new_url;
}
if (!$('#site-search-box').length){
$("nav.courseware").find("ol").append(lb + "section style='float:right'" + rlb + "input size='20'"
+ " id='site-search-box'"
+ rlb + "img src='" + course_static_url
+ "/images_search_glass.png'/" + rlb + "/input" + rlb + "/section" + rb);
}
$("#site-search-box").keypress(function(event) {
if (event.which == 13) {
event.preventDefault();
go_to_search();
}
});
// $('#site-search-box').bind("enterKey", go_to_search);
var get = function(x){
return eval(x);
}
return {'course_static_url': course_static_url,
'jump_to_url': jump_to_url,
'go_to_search': go_to_search,
'get_search_module': get_search_module,
'get_search_module_ficus': get_search_module_ficus,
'get': get,
}
}
var the_site_search = add_site_search();
var add_fix_transcript = function(){
if ($('div.wrap-instructor-info').length==0){
return;
}
$('div.xblock-student_view-video').each(function(key, vblock_e){
var vblock = $(vblock_e);
var vuid = vblock.data('usage-id').split('@');
var vid;
if (vuid.length==1){
vuid = vblock.data('usage-id').split(';_')
vid = vuid[5];
}else{
vid = vuid[2];
}
var mfnpre = vid.split("_video",1)[0];
var mfnid = mfnpre; // no periods
mfnpre = mfnpre.replace('8_370', '8.370'); // periods in gh filename
var lb = String.fromCharCode(60);
var rb = String.fromCharCode(62);
var mke = function(x){ return lb + x + rb; }
var ftid = "fix_transcript_" + mfnid;
if (!$('#' + ftid).length){
var html = lb + "span id='" + ftid + "' style='float:right'" + rb + lb + "a href='#'" + rb;
html += "contribute transcript fix" + mke("/a") + mke("/span");
console.log("html = ", html);
vblock.after(html)
}
$('#' + ftid).click(function(){
var cst = $('ol.subtitles').find('li.current');
var cindex = Number(cst.data('index'));
var gurl;
if (mfnpre.endsWith('_cq_sol')){
gurl = "https://github.com/mitocw/content-mit-8370x-cq-sol-subtitles/blob/master/";
}else{
gurl = "https://github.com/mitocw/content-mit-8370x-subtitles/blob/master/";
}
gurl += mfnpre + ".txt#L" + String(cindex + 10 + 1);
console.log("going to ", gurl);
window.open(gurl, "MITx 8.370x subtitle source");
});
});
}
try{
add_fix_transcript();
}
catch(err){
console.log(err);
}
try{
var rb = String.fromCharCode(62);
setTimeout(function(){ $('.math' + rb + 'span').css("border-left-color","transparent"); }, 3000);
setTimeout(function(){ $('.math' + rb + 'span').css("border-left-color","transparent"); }, 8000);
}
catch(err){
console.log(err);
}
</script></span>
</div>
</div>
</div>
</div>
<div class="xblock xblock-public_view xblock-public_view-vertical" data-has-score="False" data-block-type="vertical" data-runtime-version="1" data-usage-id="block-v1:MITx+8.371.3x+2T2018+type@vertical+block@CQ_Typical_sequences" data-runtime-class="LmsRuntime" data-graded="True" data-request-token="5c42ef8000b811f0b93716ffe7e42b4b" data-init="VerticalStudentView" data-course-id="course-v1:MITx+8.371.3x+2T2018">
<h2 class="hd hd-2 unit-title">CQ: Typical sequences</h2>
<div class="vert-mod">
<div class="vert vert-0" data-id="block-v1:MITx+8.371.3x+2T2018+type@problem+block@cq_M2L20_LB_Typical_sequences_RB">
<div class="xblock xblock-public_view xblock-public_view-problem xmodule_display xmodule_ProblemBlock" data-has-score="True" data-block-type="problem" data-runtime-version="1" data-usage-id="block-v1:MITx+8.371.3x+2T2018+type@problem+block@cq_M2L20_LB_Typical_sequences_RB" data-runtime-class="LmsRuntime" data-graded="True" data-request-token="5c42ef8000b811f0b93716ffe7e42b4b" data-init="XBlockToXModuleShim" data-course-id="course-v1:MITx+8.371.3x+2T2018">
<script type="json/xblock-args" class="xblock-json-init-args">
{"xmodule-type": "Problem"}
</script>
<div id="problem_cq_M2L20_LB_Typical_sequences_RB" class="problems-wrapper" role="group"
aria-labelledby="cq_M2L20_LB_Typical_sequences_RB-problem-title"
data-problem-id="block-v1:MITx+8.371.3x+2T2018+type@problem+block@cq_M2L20_LB_Typical_sequences_RB" data-url="/courses/course-v1:MITx+8.371.3x+2T2018/xblock/block-v1:MITx+8.371.3x+2T2018+type@problem+block@cq_M2L20_LB_Typical_sequences_RB/handler/xmodule_handler"
data-problem-score="0"
data-problem-total-possible="1"
data-attempts-used="0"
data-content="
<h3 class="hd hd-3 problem-header" id="cq_M2L20_LB_Typical_sequences_RB-problem-title" aria-describedby="block-v1:MITx+8.371.3x+2T2018+type@problem+block@cq_M2L20_LB_Typical_sequences_RB-problem-progress" tabindex="-1">
Typical sequences
</h3>
<div class="problem-progress" id="block-v1:MITx+8.371.3x+2T2018+type@problem+block@cq_M2L20_LB_Typical_sequences_RB-problem-progress"></div>
<div class="problem">
<div>
<p>
This is a concept question, provided to check your understanding of the previous lecture video clips. </p>
<p>
Which of the following are true? </p>
<p>
<div class="wrapper-problem-response" tabindex="-1" aria-label="Question 1" role="group"><div class="choicegroup capa_inputtype" id="inputtype_cq_M2L20_LB_Typical_sequences_RB_2_1">
<fieldset aria-describedby="status_cq_M2L20_LB_Typical_sequences_RB_2_1">
<div class="field">
<input type="checkbox" name="input_cq_M2L20_LB_Typical_sequences_RB_2_1[]" id="input_cq_M2L20_LB_Typical_sequences_RB_2_1_choice_0" class="field-input input-checkbox" value="choice_0"/><label id="cq_M2L20_LB_Typical_sequences_RB_2_1-choice_0-label" for="input_cq_M2L20_LB_Typical_sequences_RB_2_1_choice_0" class="response-label field-label label-inline" aria-describedby="status_cq_M2L20_LB_Typical_sequences_RB_2_1">
<text>For most distributions, there are exponentially many typical sequences.</text>
</label>
</div>
<div class="field">
<input type="checkbox" name="input_cq_M2L20_LB_Typical_sequences_RB_2_1[]" id="input_cq_M2L20_LB_Typical_sequences_RB_2_1_choice_1" class="field-input input-checkbox" value="choice_1"/><label id="cq_M2L20_LB_Typical_sequences_RB_2_1-choice_1-label" for="input_cq_M2L20_LB_Typical_sequences_RB_2_1_choice_1" class="response-label field-label label-inline" aria-describedby="status_cq_M2L20_LB_Typical_sequences_RB_2_1">
<text>It is possible that not all strings in a typical set have exponentially small probability.</text>
</label>
</div>
<div class="field">
<input type="checkbox" name="input_cq_M2L20_LB_Typical_sequences_RB_2_1[]" id="input_cq_M2L20_LB_Typical_sequences_RB_2_1_choice_2" class="field-input input-checkbox" value="choice_2"/><label id="cq_M2L20_LB_Typical_sequences_RB_2_1-choice_2-label" for="input_cq_M2L20_LB_Typical_sequences_RB_2_1_choice_2" class="response-label field-label label-inline" aria-describedby="status_cq_M2L20_LB_Typical_sequences_RB_2_1">
<text>Asymptotically optimal source coding can be achieved by an encoder which gives incorrect answers on all strings outside the typical set.</text>
</label>
</div>
<div class="field">
<input type="checkbox" name="input_cq_M2L20_LB_Typical_sequences_RB_2_1[]" id="input_cq_M2L20_LB_Typical_sequences_RB_2_1_choice_3" class="field-input input-checkbox" value="choice_3"/><label id="cq_M2L20_LB_Typical_sequences_RB_2_1-choice_3-label" for="input_cq_M2L20_LB_Typical_sequences_RB_2_1_choice_3" class="response-label field-label label-inline" aria-describedby="status_cq_M2L20_LB_Typical_sequences_RB_2_1">
<text>The smaller the image of a decoding map the better probability of success we obtain.</text>
</label>
</div>
<span id="answer_cq_M2L20_LB_Typical_sequences_RB_2_1"/>
</fieldset>
<div class="indicator-container">
<span class="status unanswered" id="status_cq_M2L20_LB_Typical_sequences_RB_2_1" data-tooltip="Not yet answered.">
<span class="sr">unanswered</span><span class="status-icon" aria-hidden="true"/>
</span>
</div>
</div></div>
</p>
</div>
<div class="action">
<input type="hidden" name="problem_id" value="Typical sequences" />
<div class="submit-attempt-container">
<button type="button" class="submit btn-brand" data-submitting="Submitting" data-value="Submit" data-should-enable-submit-button="True" aria-describedby="submission_feedback_cq_M2L20_LB_Typical_sequences_RB" >
<span class="submit-label">Submit</span>
</button>
<div class="submission-feedback" id="submission_feedback_cq_M2L20_LB_Typical_sequences_RB">
<span class="sr">Some problems have options such as save, reset, hints, or show answer. These options follow the Submit button.</span>
</div>
</div>
<div class="problem-action-buttons-wrapper">
<span class="problem-action-button-wrapper">
<button type="button" class="save problem-action-btn btn-default btn-small" data-value="Save">
<span class="icon fa fa-floppy-o" aria-hidden="true"></span>
<span aria-hidden="true">Save</span>
<span class="sr">Save your answer</span>
</button>
</span>
</div>
</div>
<div class="notification warning notification-gentle-alert
is-hidden"
tabindex="-1">
<span class="icon fa fa-exclamation-circle" aria-hidden="true"></span>
<span class="notification-message" aria-describedby="cq_M2L20_LB_Typical_sequences_RB-problem-title">
</span>
<div class="notification-btn-wrapper">
<button type="button" class="btn btn-default btn-small notification-btn review-btn sr">Review</button>
</div>
</div>
<div class="notification warning notification-save
is-hidden"
tabindex="-1">
<span class="icon fa fa-save" aria-hidden="true"></span>
<span class="notification-message" aria-describedby="cq_M2L20_LB_Typical_sequences_RB-problem-title">None
</span>
<div class="notification-btn-wrapper">
<button type="button" class="btn btn-default btn-small notification-btn review-btn sr">Review</button>
</div>
</div>
<div class="notification general notification-show-answer
is-hidden"
tabindex="-1">
<span class="icon fa fa-info-circle" aria-hidden="true"></span>
<span class="notification-message" aria-describedby="cq_M2L20_LB_Typical_sequences_RB-problem-title">Answers are displayed within the problem
</span>
<div class="notification-btn-wrapper">
<button type="button" class="btn btn-default btn-small notification-btn review-btn sr">Review</button>
</div>
</div>
</div>
"
data-graded="True">
<p class="loading-spinner">
<i class="fa fa-spinner fa-pulse fa-2x fa-fw"></i>
<span class="sr">Loading…</span>
</p>
</div>
</div>
</div>
<div class="vert vert-1" data-id="block-v1:MITx+8.371.3x+2T2018+type@html+block@site_search_box2">
<div class="xblock xblock-public_view xblock-public_view-html xmodule_display xmodule_HtmlBlock" data-has-score="False" data-block-type="html" data-runtime-version="1" data-usage-id="block-v1:MITx+8.371.3x+2T2018+type@html+block@site_search_box2" data-runtime-class="LmsRuntime" data-graded="True" data-request-token="5c42ef8000b811f0b93716ffe7e42b4b" data-init="XBlockToXModuleShim" data-course-id="course-v1:MITx+8.371.3x+2T2018">
<script type="json/xblock-args" class="xblock-json-init-args">
{"xmodule-type": "HTMLModule"}
</script>
<span><a href="/asset-v1:MITx+8.371.3x+2T2018+type@asset+block/NONE" id="dummy_course_static_link" style="display:none"/><a href="/courses/course-v1:MITx+8.371.3x+2T2018/jump_to_id/NONE" id="dummy_jump_link" style="display:none"/><script type="text/javascript">
var add_site_search = function(){
course_static_url = $('#dummy_course_static_link').attr('href').replace('/NONE', '');
jump_to_url = $('#dummy_jump_link').attr('href').replace('/NONE', '');
if (typeof String.prototype.startsWith != 'function') {
// see below for better implementation!
String.prototype.startsWith = function (str){
return this.indexOf(str) === 0;
};
}
if(typeof(String.prototype.trim) === "undefined")
{
String.prototype.trim = function()
{
return String(this).replace(/^\s+|\s+$/g, '');
};
}
var lb = String.fromCharCode(60);
var rb = String.fromCharCode(62);
var amp = String.fromCharCode(38);
var rlb = rb + lb;
var mke = function(x){ return lb + x + rb; }
var search_module_url = "";
var get_search_module_ficus = function(){
var cid = $('div.xblock').data('course-id');
if (cid){
console.log("cid = ", cid);
// search_module_url = "/courses/course-v1:MITx+8.371.3x+2T2018/" + cid + "/courseware/welcome/Search_this_course/";
search_module_url = "/courses/course-v1:MITx+8.371.3x+2T2018/courseware/welcome/Search_this_course/"; // automatically rewritten
console.log("3. search_module_url = ", search_module_url);
return;
}
var course_root_link = $('span.nav-item-course').find('a').attr('href');
if (course_root_link){
console.log("course_root_link = ", course_root_link);
search_module_url = course_root_link.replace("course/", "courseware/welcome/Search_this_course/");
console.log("2. search_module_url = ", search_module_url);
return
}
console.log("cannot determine search module url");
}
var get_search_module = function(){
// find search this module link
if (!($('div.course-index').length)){
return get_search_module_ficus();
}
$('div.course-index').find('nav').find('a').each(function(){
if ($(this).text().trim().startsWith("Search this course")){
search_module_url = $(this).attr('href');
console.log("search_module_url = ", search_module_url);
}
});
}
var go_to_search = function(){
get_search_module();
var sterm = $('#site-search-box').val();
// new_url = jump_to_url + "/Search_this_module/?q=" + sterm;
new_url = search_module_url + "?q=" + sterm;
console.log("sterm = ", sterm, " ; going to ", new_url);
window.location.href = new_url;
}
if (!$('#site-search-box').length){
$("nav.courseware").find("ol").append(lb + "section style='float:right'" + rlb + "input size='20'"
+ " id='site-search-box'"
+ rlb + "img src='" + course_static_url
+ "/images_search_glass.png'/" + rlb + "/input" + rlb + "/section" + rb);
}
$("#site-search-box").keypress(function(event) {
if (event.which == 13) {
event.preventDefault();
go_to_search();
}
});
// $('#site-search-box').bind("enterKey", go_to_search);
var get = function(x){
return eval(x);
}
return {'course_static_url': course_static_url,
'jump_to_url': jump_to_url,
'go_to_search': go_to_search,
'get_search_module': get_search_module,
'get_search_module_ficus': get_search_module_ficus,
'get': get,
}
}
var the_site_search = add_site_search();
var add_fix_transcript = function(){
if ($('div.wrap-instructor-info').length==0){
return;
}
$('div.xblock-student_view-video').each(function(key, vblock_e){
var vblock = $(vblock_e);
var vuid = vblock.data('usage-id').split('@');
var vid;
if (vuid.length==1){
vuid = vblock.data('usage-id').split(';_')
vid = vuid[5];
}else{
vid = vuid[2];
}
var mfnpre = vid.split("_video",1)[0];
var mfnid = mfnpre; // no periods
mfnpre = mfnpre.replace('8_370', '8.370'); // periods in gh filename
var lb = String.fromCharCode(60);
var rb = String.fromCharCode(62);
var mke = function(x){ return lb + x + rb; }
var ftid = "fix_transcript_" + mfnid;
if (!$('#' + ftid).length){
var html = lb + "span id='" + ftid + "' style='float:right'" + rb + lb + "a href='#'" + rb;
html += "contribute transcript fix" + mke("/a") + mke("/span");
console.log("html = ", html);
vblock.after(html)
}
$('#' + ftid).click(function(){
var cst = $('ol.subtitles').find('li.current');
var cindex = Number(cst.data('index'));
var gurl;
if (mfnpre.endsWith('_cq_sol')){
gurl = "https://github.com/mitocw/content-mit-8370x-cq-sol-subtitles/blob/master/";
}else{
gurl = "https://github.com/mitocw/content-mit-8370x-subtitles/blob/master/";
}
gurl += mfnpre + ".txt#L" + String(cindex + 10 + 1);
console.log("going to ", gurl);
window.open(gurl, "MITx 8.370x subtitle source");
});
});
}
try{
add_fix_transcript();
}
catch(err){
console.log(err);
}
try{
var rb = String.fromCharCode(62);
setTimeout(function(){ $('.math' + rb + 'span').css("border-left-color","transparent"); }, 3000);
setTimeout(function(){ $('.math' + rb + 'span').css("border-left-color","transparent"); }, 8000);
}
catch(err){
console.log(err);
}
</script></span>
</div>
</div>
</div>
</div>
<div class="xblock xblock-public_view xblock-public_view-vertical" data-has-score="False" data-block-type="vertical" data-runtime-version="1" data-usage-id="block-v1:MITx+8.371.3x+2T2018+type@vertical+block@Proof_of_the_noiseless_coding_theorem_-_size_of_the_typical_set" data-runtime-class="LmsRuntime" data-graded="True" data-request-token="5c42ef8000b811f0b93716ffe7e42b4b" data-init="VerticalStudentView" data-course-id="course-v1:MITx+8.371.3x+2T2018">
<h2 class="hd hd-2 unit-title">Proof of the noiseless coding theorem - size of the typical set</h2>
<div class="vert-mod">
<div class="vert vert-0" data-id="block-v1:MITx+8.371.3x+2T2018+type@video+block@M3L20j">
<div class="xblock xblock-public_view xblock-public_view-video xmodule_display xmodule_VideoBlock" data-has-score="False" data-block-type="video" data-runtime-version="1" data-usage-id="block-v1:MITx+8.371.3x+2T2018+type@video+block@M3L20j" data-runtime-class="LmsRuntime" data-graded="True" data-request-token="5c42ef8000b811f0b93716ffe7e42b4b" data-init="XBlockToXModuleShim" data-course-id="course-v1:MITx+8.371.3x+2T2018">
<script type="json/xblock-args" class="xblock-json-init-args">
{"xmodule-type": "Video"}
</script>
<h3 class="hd hd-2">Proof of the noiseless coding theorem - size of the typical set</h3>
<div
id="video_M3L20j"
class="video closed"
data-metadata='{"transcriptAvailableTranslationsUrl": "/courses/course-v1:MITx+8.371.3x+2T2018/xblock/block-v1:MITx+8.371.3x+2T2018+type@video+block@M3L20j/handler/transcript/available_translations", "transcriptLanguages": {"en": "English"}, "start": 0.0, "speed": null, "publishCompletionUrl": "/courses/course-v1:MITx+8.371.3x+2T2018/xblock/block-v1:MITx+8.371.3x+2T2018+type@video+block@M3L20j/handler/publish_completion", "sources": [], "completionPercentage": 0.95, "ytApiUrl": "https://www.youtube.com/iframe_api", "autoplay": false, "ytMetadataEndpoint": "", "ytTestTimeout": 1500, "generalSpeed": 1.0, "completionEnabled": false, "lmsRootURL": "https://openlearninglibrary.mit.edu", "transcriptTranslationUrl": "/courses/course-v1:MITx+8.371.3x+2T2018/xblock/block-v1:MITx+8.371.3x+2T2018+type@video+block@M3L20j/handler/transcript/translation/__lang__", "poster": null, "captionDataDir": null, "duration": 0.0, "transcriptLanguage": "en", "streams": "1.00:4zllAy2Qw_E", "saveStateEnabled": false, "saveStateUrl": "/courses/course-v1:MITx+8.371.3x+2T2018/xblock/block-v1:MITx+8.371.3x+2T2018+type@video+block@M3L20j/handler/xmodule_handler/save_user_state", "autohideHtml5": false, "end": 0.0, "showCaptions": "true", "autoAdvance": false, "savedVideoPosition": 0.0, "recordedYoutubeIsAvailable": true, "prioritizeHls": false}'
data-bumper-metadata='null'
data-autoadvance-enabled="False"
data-poster='null'
tabindex="-1"
>
<div class="focus_grabber first"></div>
<div class="tc-wrapper">
<div class="video-wrapper">
<span tabindex="0" class="spinner" aria-hidden="false" aria-label="Loading video player"></span>
<span tabindex="-1" class="btn-play fa fa-youtube-play fa-2x is-hidden" aria-hidden="true" aria-label="Play video"></span>
<div class="video-player-pre"></div>
<div class="video-player">
<div id="M3L20j"></div>
<h4 class="hd hd-4 video-error is-hidden">No playable video sources found.</h4>
<h4 class="hd hd-4 video-hls-error is-hidden">
Your browser does not support this video format. Try using a different browser.
</h4>
</div>
<div class="video-player-post"></div>
<div class="closed-captions"></div>
<div class="video-controls is-hidden">
<div>
<div class="vcr"><div class="vidtime">0:00 / 0:00</div></div>
<div class="secondary-controls"></div>
</div>
</div>
</div>
</div>
<div class="focus_grabber last"></div>
</div>
</div>
</div>
<div class="vert vert-1" data-id="block-v1:MITx+8.371.3x+2T2018+type@html+block@site_search_box8">
<div class="xblock xblock-public_view xblock-public_view-html xmodule_display xmodule_HtmlBlock" data-has-score="False" data-block-type="html" data-runtime-version="1" data-usage-id="block-v1:MITx+8.371.3x+2T2018+type@html+block@site_search_box8" data-runtime-class="LmsRuntime" data-graded="True" data-request-token="5c42ef8000b811f0b93716ffe7e42b4b" data-init="XBlockToXModuleShim" data-course-id="course-v1:MITx+8.371.3x+2T2018">
<script type="json/xblock-args" class="xblock-json-init-args">
{"xmodule-type": "HTMLModule"}
</script>
<span><a href="/asset-v1:MITx+8.371.3x+2T2018+type@asset+block/NONE" id="dummy_course_static_link" style="display:none"/><a href="/courses/course-v1:MITx+8.371.3x+2T2018/jump_to_id/NONE" id="dummy_jump_link" style="display:none"/><script type="text/javascript">
var add_site_search = function(){
course_static_url = $('#dummy_course_static_link').attr('href').replace('/NONE', '');
jump_to_url = $('#dummy_jump_link').attr('href').replace('/NONE', '');
if (typeof String.prototype.startsWith != 'function') {
// see below for better implementation!
String.prototype.startsWith = function (str){
return this.indexOf(str) === 0;
};
}
if(typeof(String.prototype.trim) === "undefined")
{
String.prototype.trim = function()
{
return String(this).replace(/^\s+|\s+$/g, '');
};
}
var lb = String.fromCharCode(60);
var rb = String.fromCharCode(62);
var amp = String.fromCharCode(38);
var rlb = rb + lb;
var mke = function(x){ return lb + x + rb; }
var search_module_url = "";
var get_search_module_ficus = function(){
var cid = $('div.xblock').data('course-id');
if (cid){
console.log("cid = ", cid);
// search_module_url = "/courses/course-v1:MITx+8.371.3x+2T2018/" + cid + "/courseware/welcome/Search_this_course/";
search_module_url = "/courses/course-v1:MITx+8.371.3x+2T2018/courseware/welcome/Search_this_course/"; // automatically rewritten
console.log("3. search_module_url = ", search_module_url);
return;
}
var course_root_link = $('span.nav-item-course').find('a').attr('href');
if (course_root_link){
console.log("course_root_link = ", course_root_link);
search_module_url = course_root_link.replace("course/", "courseware/welcome/Search_this_course/");
console.log("2. search_module_url = ", search_module_url);
return
}
console.log("cannot determine search module url");
}
var get_search_module = function(){
// find search this module link
if (!($('div.course-index').length)){
return get_search_module_ficus();
}
$('div.course-index').find('nav').find('a').each(function(){
if ($(this).text().trim().startsWith("Search this course")){
search_module_url = $(this).attr('href');
console.log("search_module_url = ", search_module_url);
}
});
}
var go_to_search = function(){
get_search_module();
var sterm = $('#site-search-box').val();
// new_url = jump_to_url + "/Search_this_module/?q=" + sterm;
new_url = search_module_url + "?q=" + sterm;
console.log("sterm = ", sterm, " ; going to ", new_url);
window.location.href = new_url;
}
if (!$('#site-search-box').length){
$("nav.courseware").find("ol").append(lb + "section style='float:right'" + rlb + "input size='20'"
+ " id='site-search-box'"
+ rlb + "img src='" + course_static_url
+ "/images_search_glass.png'/" + rlb + "/input" + rlb + "/section" + rb);
}
$("#site-search-box").keypress(function(event) {
if (event.which == 13) {
event.preventDefault();
go_to_search();
}
});
// $('#site-search-box').bind("enterKey", go_to_search);
var get = function(x){
return eval(x);
}
return {'course_static_url': course_static_url,
'jump_to_url': jump_to_url,
'go_to_search': go_to_search,
'get_search_module': get_search_module,
'get_search_module_ficus': get_search_module_ficus,
'get': get,
}
}
var the_site_search = add_site_search();
var add_fix_transcript = function(){
if ($('div.wrap-instructor-info').length==0){
return;
}
$('div.xblock-student_view-video').each(function(key, vblock_e){
var vblock = $(vblock_e);
var vuid = vblock.data('usage-id').split('@');
var vid;
if (vuid.length==1){
vuid = vblock.data('usage-id').split(';_')
vid = vuid[5];
}else{
vid = vuid[2];
}
var mfnpre = vid.split("_video",1)[0];
var mfnid = mfnpre; // no periods
mfnpre = mfnpre.replace('8_370', '8.370'); // periods in gh filename
var lb = String.fromCharCode(60);
var rb = String.fromCharCode(62);
var mke = function(x){ return lb + x + rb; }
var ftid = "fix_transcript_" + mfnid;
if (!$('#' + ftid).length){
var html = lb + "span id='" + ftid + "' style='float:right'" + rb + lb + "a href='#'" + rb;
html += "contribute transcript fix" + mke("/a") + mke("/span");
console.log("html = ", html);
vblock.after(html)
}
$('#' + ftid).click(function(){
var cst = $('ol.subtitles').find('li.current');
var cindex = Number(cst.data('index'));
var gurl;
if (mfnpre.endsWith('_cq_sol')){
gurl = "https://github.com/mitocw/content-mit-8370x-cq-sol-subtitles/blob/master/";
}else{
gurl = "https://github.com/mitocw/content-mit-8370x-subtitles/blob/master/";
}
gurl += mfnpre + ".txt#L" + String(cindex + 10 + 1);
console.log("going to ", gurl);
window.open(gurl, "MITx 8.370x subtitle source");
});
});
}
try{
add_fix_transcript();
}
catch(err){
console.log(err);
}
try{
var rb = String.fromCharCode(62);
setTimeout(function(){ $('.math' + rb + 'span').css("border-left-color","transparent"); }, 3000);
setTimeout(function(){ $('.math' + rb + 'span').css("border-left-color","transparent"); }, 8000);
}
catch(err){
console.log(err);
}
</script></span>
</div>
</div>
</div>
</div>
<div class="xblock xblock-public_view xblock-public_view-vertical" data-has-score="False" data-block-type="vertical" data-runtime-version="1" data-usage-id="block-v1:MITx+8.371.3x+2T2018+type@vertical+block@Converse_of_the_noiseless_coding_theorem" data-runtime-class="LmsRuntime" data-graded="True" data-request-token="5c42ef8000b811f0b93716ffe7e42b4b" data-init="VerticalStudentView" data-course-id="course-v1:MITx+8.371.3x+2T2018">
<h2 class="hd hd-2 unit-title">Converse of the noiseless coding theorem</h2>
<div class="vert-mod">
<div class="vert vert-0" data-id="block-v1:MITx+8.371.3x+2T2018+type@video+block@M3L20k">
<div class="xblock xblock-public_view xblock-public_view-video xmodule_display xmodule_VideoBlock" data-has-score="False" data-block-type="video" data-runtime-version="1" data-usage-id="block-v1:MITx+8.371.3x+2T2018+type@video+block@M3L20k" data-runtime-class="LmsRuntime" data-graded="True" data-request-token="5c42ef8000b811f0b93716ffe7e42b4b" data-init="XBlockToXModuleShim" data-course-id="course-v1:MITx+8.371.3x+2T2018">
<script type="json/xblock-args" class="xblock-json-init-args">
{"xmodule-type": "Video"}
</script>
<h3 class="hd hd-2">Converse of the noiseless coding theorem</h3>
<div
id="video_M3L20k"
class="video closed"
data-metadata='{"transcriptAvailableTranslationsUrl": "/courses/course-v1:MITx+8.371.3x+2T2018/xblock/block-v1:MITx+8.371.3x+2T2018+type@video+block@M3L20k/handler/transcript/available_translations", "transcriptLanguages": {"en": "English"}, "start": 0.0, "speed": null, "publishCompletionUrl": "/courses/course-v1:MITx+8.371.3x+2T2018/xblock/block-v1:MITx+8.371.3x+2T2018+type@video+block@M3L20k/handler/publish_completion", "sources": [], "completionPercentage": 0.95, "ytApiUrl": "https://www.youtube.com/iframe_api", "autoplay": false, "ytMetadataEndpoint": "", "ytTestTimeout": 1500, "generalSpeed": 1.0, "completionEnabled": false, "lmsRootURL": "https://openlearninglibrary.mit.edu", "transcriptTranslationUrl": "/courses/course-v1:MITx+8.371.3x+2T2018/xblock/block-v1:MITx+8.371.3x+2T2018+type@video+block@M3L20k/handler/transcript/translation/__lang__", "poster": null, "captionDataDir": null, "duration": 0.0, "transcriptLanguage": "en", "streams": "1.00:jV28dxBz3X8", "saveStateEnabled": false, "saveStateUrl": "/courses/course-v1:MITx+8.371.3x+2T2018/xblock/block-v1:MITx+8.371.3x+2T2018+type@video+block@M3L20k/handler/xmodule_handler/save_user_state", "autohideHtml5": false, "end": 0.0, "showCaptions": "true", "autoAdvance": false, "savedVideoPosition": 0.0, "recordedYoutubeIsAvailable": true, "prioritizeHls": false}'
data-bumper-metadata='null'
data-autoadvance-enabled="False"
data-poster='null'
tabindex="-1"
>
<div class="focus_grabber first"></div>
<div class="tc-wrapper">
<div class="video-wrapper">
<span tabindex="0" class="spinner" aria-hidden="false" aria-label="Loading video player"></span>
<span tabindex="-1" class="btn-play fa fa-youtube-play fa-2x is-hidden" aria-hidden="true" aria-label="Play video"></span>
<div class="video-player-pre"></div>
<div class="video-player">
<div id="M3L20k"></div>
<h4 class="hd hd-4 video-error is-hidden">No playable video sources found.</h4>
<h4 class="hd hd-4 video-hls-error is-hidden">
Your browser does not support this video format. Try using a different browser.
</h4>
</div>
<div class="video-player-post"></div>
<div class="closed-captions"></div>
<div class="video-controls is-hidden">
<div>
<div class="vcr"><div class="vidtime">0:00 / 0:00</div></div>
<div class="secondary-controls"></div>
</div>
</div>
</div>
</div>
<div class="focus_grabber last"></div>
</div>
</div>
</div>
<div class="vert vert-1" data-id="block-v1:MITx+8.371.3x+2T2018+type@html+block@site_search_box9">
<div class="xblock xblock-public_view xblock-public_view-html xmodule_display xmodule_HtmlBlock" data-has-score="False" data-block-type="html" data-runtime-version="1" data-usage-id="block-v1:MITx+8.371.3x+2T2018+type@html+block@site_search_box9" data-runtime-class="LmsRuntime" data-graded="True" data-request-token="5c42ef8000b811f0b93716ffe7e42b4b" data-init="XBlockToXModuleShim" data-course-id="course-v1:MITx+8.371.3x+2T2018">
<script type="json/xblock-args" class="xblock-json-init-args">
{"xmodule-type": "HTMLModule"}
</script>
<span><a href="/asset-v1:MITx+8.371.3x+2T2018+type@asset+block/NONE" id="dummy_course_static_link" style="display:none"/><a href="/courses/course-v1:MITx+8.371.3x+2T2018/jump_to_id/NONE" id="dummy_jump_link" style="display:none"/><script type="text/javascript">
var add_site_search = function(){
course_static_url = $('#dummy_course_static_link').attr('href').replace('/NONE', '');
jump_to_url = $('#dummy_jump_link').attr('href').replace('/NONE', '');
if (typeof String.prototype.startsWith != 'function') {
// see below for better implementation!
String.prototype.startsWith = function (str){
return this.indexOf(str) === 0;
};
}
if(typeof(String.prototype.trim) === "undefined")
{
String.prototype.trim = function()
{
return String(this).replace(/^\s+|\s+$/g, '');
};
}
var lb = String.fromCharCode(60);
var rb = String.fromCharCode(62);
var amp = String.fromCharCode(38);
var rlb = rb + lb;
var mke = function(x){ return lb + x + rb; }
var search_module_url = "";
var get_search_module_ficus = function(){
var cid = $('div.xblock').data('course-id');
if (cid){
console.log("cid = ", cid);
// search_module_url = "/courses/course-v1:MITx+8.371.3x+2T2018/" + cid + "/courseware/welcome/Search_this_course/";
search_module_url = "/courses/course-v1:MITx+8.371.3x+2T2018/courseware/welcome/Search_this_course/"; // automatically rewritten
console.log("3. search_module_url = ", search_module_url);
return;
}
var course_root_link = $('span.nav-item-course').find('a').attr('href');
if (course_root_link){
console.log("course_root_link = ", course_root_link);
search_module_url = course_root_link.replace("course/", "courseware/welcome/Search_this_course/");
console.log("2. search_module_url = ", search_module_url);
return
}
console.log("cannot determine search module url");
}
var get_search_module = function(){
// find search this module link
if (!($('div.course-index').length)){
return get_search_module_ficus();
}
$('div.course-index').find('nav').find('a').each(function(){
if ($(this).text().trim().startsWith("Search this course")){
search_module_url = $(this).attr('href');
console.log("search_module_url = ", search_module_url);
}
});
}
var go_to_search = function(){
get_search_module();
var sterm = $('#site-search-box').val();
// new_url = jump_to_url + "/Search_this_module/?q=" + sterm;
new_url = search_module_url + "?q=" + sterm;
console.log("sterm = ", sterm, " ; going to ", new_url);
window.location.href = new_url;
}
if (!$('#site-search-box').length){
$("nav.courseware").find("ol").append(lb + "section style='float:right'" + rlb + "input size='20'"
+ " id='site-search-box'"
+ rlb + "img src='" + course_static_url
+ "/images_search_glass.png'/" + rlb + "/input" + rlb + "/section" + rb);
}
$("#site-search-box").keypress(function(event) {
if (event.which == 13) {
event.preventDefault();
go_to_search();
}
});
// $('#site-search-box').bind("enterKey", go_to_search);
var get = function(x){
return eval(x);
}
return {'course_static_url': course_static_url,
'jump_to_url': jump_to_url,
'go_to_search': go_to_search,
'get_search_module': get_search_module,
'get_search_module_ficus': get_search_module_ficus,
'get': get,
}
}
var the_site_search = add_site_search();
var add_fix_transcript = function(){
if ($('div.wrap-instructor-info').length==0){
return;
}
$('div.xblock-student_view-video').each(function(key, vblock_e){
var vblock = $(vblock_e);
var vuid = vblock.data('usage-id').split('@');
var vid;
if (vuid.length==1){
vuid = vblock.data('usage-id').split(';_')
vid = vuid[5];
}else{
vid = vuid[2];
}
var mfnpre = vid.split("_video",1)[0];
var mfnid = mfnpre; // no periods
mfnpre = mfnpre.replace('8_370', '8.370'); // periods in gh filename
var lb = String.fromCharCode(60);
var rb = String.fromCharCode(62);
var mke = function(x){ return lb + x + rb; }
var ftid = "fix_transcript_" + mfnid;
if (!$('#' + ftid).length){
var html = lb + "span id='" + ftid + "' style='float:right'" + rb + lb + "a href='#'" + rb;
html += "contribute transcript fix" + mke("/a") + mke("/span");
console.log("html = ", html);
vblock.after(html)
}
$('#' + ftid).click(function(){
var cst = $('ol.subtitles').find('li.current');
var cindex = Number(cst.data('index'));
var gurl;
if (mfnpre.endsWith('_cq_sol')){
gurl = "https://github.com/mitocw/content-mit-8370x-cq-sol-subtitles/blob/master/";
}else{
gurl = "https://github.com/mitocw/content-mit-8370x-subtitles/blob/master/";
}
gurl += mfnpre + ".txt#L" + String(cindex + 10 + 1);
console.log("going to ", gurl);
window.open(gurl, "MITx 8.370x subtitle source");
});
});
}
try{
add_fix_transcript();
}
catch(err){
console.log(err);
}
try{
var rb = String.fromCharCode(62);
setTimeout(function(){ $('.math' + rb + 'span').css("border-left-color","transparent"); }, 3000);
setTimeout(function(){ $('.math' + rb + 'span').css("border-left-color","transparent"); }, 8000);
}
catch(err){
console.log(err);
}
</script></span>
</div>
</div>
</div>
</div>
<div class="xblock xblock-public_view xblock-public_view-vertical" data-has-score="False" data-block-type="vertical" data-runtime-version="1" data-usage-id="block-v1:MITx+8.371.3x+2T2018+type@vertical+block@Shannons_noisy_coding_theorem_-_setup_and_noisy_channel_examples" data-runtime-class="LmsRuntime" data-graded="True" data-request-token="5c42ef8000b811f0b93716ffe7e42b4b" data-init="VerticalStudentView" data-course-id="course-v1:MITx+8.371.3x+2T2018">
<h2 class="hd hd-2 unit-title">Shannon's noisy coding theorem - setup and noisy channel examples</h2>
<div class="vert-mod">
<div class="vert vert-0" data-id="block-v1:MITx+8.371.3x+2T2018+type@video+block@M3L20m">
<div class="xblock xblock-public_view xblock-public_view-video xmodule_display xmodule_VideoBlock" data-has-score="False" data-block-type="video" data-runtime-version="1" data-usage-id="block-v1:MITx+8.371.3x+2T2018+type@video+block@M3L20m" data-runtime-class="LmsRuntime" data-graded="True" data-request-token="5c42ef8000b811f0b93716ffe7e42b4b" data-init="XBlockToXModuleShim" data-course-id="course-v1:MITx+8.371.3x+2T2018">
<script type="json/xblock-args" class="xblock-json-init-args">
{"xmodule-type": "Video"}
</script>
<h3 class="hd hd-2">Shannon's noisy coding theorem - setup and noisy channel examples</h3>
<div
id="video_M3L20m"
class="video closed"
data-metadata='{"transcriptAvailableTranslationsUrl": "/courses/course-v1:MITx+8.371.3x+2T2018/xblock/block-v1:MITx+8.371.3x+2T2018+type@video+block@M3L20m/handler/transcript/available_translations", "transcriptLanguages": {"en": "English"}, "start": 0.0, "speed": null, "publishCompletionUrl": "/courses/course-v1:MITx+8.371.3x+2T2018/xblock/block-v1:MITx+8.371.3x+2T2018+type@video+block@M3L20m/handler/publish_completion", "sources": [], "completionPercentage": 0.95, "ytApiUrl": "https://www.youtube.com/iframe_api", "autoplay": false, "ytMetadataEndpoint": "", "ytTestTimeout": 1500, "generalSpeed": 1.0, "completionEnabled": false, "lmsRootURL": "https://openlearninglibrary.mit.edu", "transcriptTranslationUrl": "/courses/course-v1:MITx+8.371.3x+2T2018/xblock/block-v1:MITx+8.371.3x+2T2018+type@video+block@M3L20m/handler/transcript/translation/__lang__", "poster": null, "captionDataDir": null, "duration": 0.0, "transcriptLanguage": "en", "streams": "1.00:iDUphQlv8h0", "saveStateEnabled": false, "saveStateUrl": "/courses/course-v1:MITx+8.371.3x+2T2018/xblock/block-v1:MITx+8.371.3x+2T2018+type@video+block@M3L20m/handler/xmodule_handler/save_user_state", "autohideHtml5": false, "end": 0.0, "showCaptions": "true", "autoAdvance": false, "savedVideoPosition": 0.0, "recordedYoutubeIsAvailable": true, "prioritizeHls": false}'
data-bumper-metadata='null'
data-autoadvance-enabled="False"
data-poster='null'
tabindex="-1"
>
<div class="focus_grabber first"></div>
<div class="tc-wrapper">
<div class="video-wrapper">
<span tabindex="0" class="spinner" aria-hidden="false" aria-label="Loading video player"></span>
<span tabindex="-1" class="btn-play fa fa-youtube-play fa-2x is-hidden" aria-hidden="true" aria-label="Play video"></span>
<div class="video-player-pre"></div>
<div class="video-player">
<div id="M3L20m"></div>
<h4 class="hd hd-4 video-error is-hidden">No playable video sources found.</h4>
<h4 class="hd hd-4 video-hls-error is-hidden">
Your browser does not support this video format. Try using a different browser.
</h4>
</div>
<div class="video-player-post"></div>
<div class="closed-captions"></div>
<div class="video-controls is-hidden">
<div>
<div class="vcr"><div class="vidtime">0:00 / 0:00</div></div>
<div class="secondary-controls"></div>
</div>
</div>
</div>
</div>
<div class="focus_grabber last"></div>
</div>
</div>
</div>
<div class="vert vert-1" data-id="block-v1:MITx+8.371.3x+2T2018+type@html+block@site_search_box10">
<div class="xblock xblock-public_view xblock-public_view-html xmodule_display xmodule_HtmlBlock" data-has-score="False" data-block-type="html" data-runtime-version="1" data-usage-id="block-v1:MITx+8.371.3x+2T2018+type@html+block@site_search_box10" data-runtime-class="LmsRuntime" data-graded="True" data-request-token="5c42ef8000b811f0b93716ffe7e42b4b" data-init="XBlockToXModuleShim" data-course-id="course-v1:MITx+8.371.3x+2T2018">
<script type="json/xblock-args" class="xblock-json-init-args">
{"xmodule-type": "HTMLModule"}
</script>
<span><a href="/asset-v1:MITx+8.371.3x+2T2018+type@asset+block/NONE" id="dummy_course_static_link" style="display:none"/><a href="/courses/course-v1:MITx+8.371.3x+2T2018/jump_to_id/NONE" id="dummy_jump_link" style="display:none"/><script type="text/javascript">
var add_site_search = function(){
course_static_url = $('#dummy_course_static_link').attr('href').replace('/NONE', '');
jump_to_url = $('#dummy_jump_link').attr('href').replace('/NONE', '');
if (typeof String.prototype.startsWith != 'function') {
// see below for better implementation!
String.prototype.startsWith = function (str){
return this.indexOf(str) === 0;
};
}
if(typeof(String.prototype.trim) === "undefined")
{
String.prototype.trim = function()
{
return String(this).replace(/^\s+|\s+$/g, '');
};
}
var lb = String.fromCharCode(60);
var rb = String.fromCharCode(62);
var amp = String.fromCharCode(38);
var rlb = rb + lb;
var mke = function(x){ return lb + x + rb; }
var search_module_url = "";
var get_search_module_ficus = function(){
var cid = $('div.xblock').data('course-id');
if (cid){
console.log("cid = ", cid);
// search_module_url = "/courses/course-v1:MITx+8.371.3x+2T2018/" + cid + "/courseware/welcome/Search_this_course/";
search_module_url = "/courses/course-v1:MITx+8.371.3x+2T2018/courseware/welcome/Search_this_course/"; // automatically rewritten
console.log("3. search_module_url = ", search_module_url);
return;
}
var course_root_link = $('span.nav-item-course').find('a').attr('href');
if (course_root_link){
console.log("course_root_link = ", course_root_link);
search_module_url = course_root_link.replace("course/", "courseware/welcome/Search_this_course/");
console.log("2. search_module_url = ", search_module_url);
return
}
console.log("cannot determine search module url");
}
var get_search_module = function(){
// find search this module link
if (!($('div.course-index').length)){
return get_search_module_ficus();
}
$('div.course-index').find('nav').find('a').each(function(){
if ($(this).text().trim().startsWith("Search this course")){
search_module_url = $(this).attr('href');
console.log("search_module_url = ", search_module_url);
}
});
}
var go_to_search = function(){
get_search_module();
var sterm = $('#site-search-box').val();
// new_url = jump_to_url + "/Search_this_module/?q=" + sterm;
new_url = search_module_url + "?q=" + sterm;
console.log("sterm = ", sterm, " ; going to ", new_url);
window.location.href = new_url;
}
if (!$('#site-search-box').length){
$("nav.courseware").find("ol").append(lb + "section style='float:right'" + rlb + "input size='20'"
+ " id='site-search-box'"
+ rlb + "img src='" + course_static_url
+ "/images_search_glass.png'/" + rlb + "/input" + rlb + "/section" + rb);
}
$("#site-search-box").keypress(function(event) {
if (event.which == 13) {
event.preventDefault();
go_to_search();
}
});
// $('#site-search-box').bind("enterKey", go_to_search);
var get = function(x){
return eval(x);
}
return {'course_static_url': course_static_url,
'jump_to_url': jump_to_url,
'go_to_search': go_to_search,
'get_search_module': get_search_module,
'get_search_module_ficus': get_search_module_ficus,
'get': get,
}
}
var the_site_search = add_site_search();
var add_fix_transcript = function(){
if ($('div.wrap-instructor-info').length==0){
return;
}
$('div.xblock-student_view-video').each(function(key, vblock_e){
var vblock = $(vblock_e);
var vuid = vblock.data('usage-id').split('@');
var vid;
if (vuid.length==1){
vuid = vblock.data('usage-id').split(';_')
vid = vuid[5];
}else{
vid = vuid[2];
}
var mfnpre = vid.split("_video",1)[0];
var mfnid = mfnpre; // no periods
mfnpre = mfnpre.replace('8_370', '8.370'); // periods in gh filename
var lb = String.fromCharCode(60);
var rb = String.fromCharCode(62);
var mke = function(x){ return lb + x + rb; }
var ftid = "fix_transcript_" + mfnid;
if (!$('#' + ftid).length){
var html = lb + "span id='" + ftid + "' style='float:right'" + rb + lb + "a href='#'" + rb;
html += "contribute transcript fix" + mke("/a") + mke("/span");
console.log("html = ", html);
vblock.after(html)
}
$('#' + ftid).click(function(){
var cst = $('ol.subtitles').find('li.current');
var cindex = Number(cst.data('index'));
var gurl;
if (mfnpre.endsWith('_cq_sol')){
gurl = "https://github.com/mitocw/content-mit-8370x-cq-sol-subtitles/blob/master/";
}else{
gurl = "https://github.com/mitocw/content-mit-8370x-subtitles/blob/master/";
}
gurl += mfnpre + ".txt#L" + String(cindex + 10 + 1);
console.log("going to ", gurl);
window.open(gurl, "MITx 8.370x subtitle source");
});
});
}
try{
add_fix_transcript();
}
catch(err){
console.log(err);
}
try{
var rb = String.fromCharCode(62);
setTimeout(function(){ $('.math' + rb + 'span').css("border-left-color","transparent"); }, 3000);
setTimeout(function(){ $('.math' + rb + 'span').css("border-left-color","transparent"); }, 8000);
}
catch(err){
console.log(err);
}
</script></span>
</div>
</div>
</div>
</div>
<div class="xblock xblock-public_view xblock-public_view-vertical" data-has-score="False" data-block-type="vertical" data-runtime-version="1" data-usage-id="block-v1:MITx+8.371.3x+2T2018+type@vertical+block@Shannons_noisy_coding_theorem_-_statement" data-runtime-class="LmsRuntime" data-graded="True" data-request-token="5c42ef8000b811f0b93716ffe7e42b4b" data-init="VerticalStudentView" data-course-id="course-v1:MITx+8.371.3x+2T2018">
<h2 class="hd hd-2 unit-title">Shannon's noisy coding theorem - statement</h2>
<div class="vert-mod">
<div class="vert vert-0" data-id="block-v1:MITx+8.371.3x+2T2018+type@video+block@M3L20n">
<div class="xblock xblock-public_view xblock-public_view-video xmodule_display xmodule_VideoBlock" data-has-score="False" data-block-type="video" data-runtime-version="1" data-usage-id="block-v1:MITx+8.371.3x+2T2018+type@video+block@M3L20n" data-runtime-class="LmsRuntime" data-graded="True" data-request-token="5c42ef8000b811f0b93716ffe7e42b4b" data-init="XBlockToXModuleShim" data-course-id="course-v1:MITx+8.371.3x+2T2018">
<script type="json/xblock-args" class="xblock-json-init-args">
{"xmodule-type": "Video"}
</script>
<h3 class="hd hd-2">Shannon's noisy coding theorem - statement</h3>
<div
id="video_M3L20n"
class="video closed"
data-metadata='{"transcriptAvailableTranslationsUrl": "/courses/course-v1:MITx+8.371.3x+2T2018/xblock/block-v1:MITx+8.371.3x+2T2018+type@video+block@M3L20n/handler/transcript/available_translations", "transcriptLanguages": {"en": "English"}, "start": 0.0, "speed": null, "publishCompletionUrl": "/courses/course-v1:MITx+8.371.3x+2T2018/xblock/block-v1:MITx+8.371.3x+2T2018+type@video+block@M3L20n/handler/publish_completion", "sources": [], "completionPercentage": 0.95, "ytApiUrl": "https://www.youtube.com/iframe_api", "autoplay": false, "ytMetadataEndpoint": "", "ytTestTimeout": 1500, "generalSpeed": 1.0, "completionEnabled": false, "lmsRootURL": "https://openlearninglibrary.mit.edu", "transcriptTranslationUrl": "/courses/course-v1:MITx+8.371.3x+2T2018/xblock/block-v1:MITx+8.371.3x+2T2018+type@video+block@M3L20n/handler/transcript/translation/__lang__", "poster": null, "captionDataDir": null, "duration": 0.0, "transcriptLanguage": "en", "streams": "1.00:_uEfy1JzTUI", "saveStateEnabled": false, "saveStateUrl": "/courses/course-v1:MITx+8.371.3x+2T2018/xblock/block-v1:MITx+8.371.3x+2T2018+type@video+block@M3L20n/handler/xmodule_handler/save_user_state", "autohideHtml5": false, "end": 0.0, "showCaptions": "true", "autoAdvance": false, "savedVideoPosition": 0.0, "recordedYoutubeIsAvailable": true, "prioritizeHls": false}'
data-bumper-metadata='null'
data-autoadvance-enabled="False"
data-poster='null'
tabindex="-1"
>
<div class="focus_grabber first"></div>
<div class="tc-wrapper">
<div class="video-wrapper">
<span tabindex="0" class="spinner" aria-hidden="false" aria-label="Loading video player"></span>
<span tabindex="-1" class="btn-play fa fa-youtube-play fa-2x is-hidden" aria-hidden="true" aria-label="Play video"></span>
<div class="video-player-pre"></div>
<div class="video-player">
<div id="M3L20n"></div>
<h4 class="hd hd-4 video-error is-hidden">No playable video sources found.</h4>
<h4 class="hd hd-4 video-hls-error is-hidden">
Your browser does not support this video format. Try using a different browser.
</h4>
</div>
<div class="video-player-post"></div>
<div class="closed-captions"></div>
<div class="video-controls is-hidden">
<div>
<div class="vcr"><div class="vidtime">0:00 / 0:00</div></div>
<div class="secondary-controls"></div>
</div>
</div>
</div>
</div>
<div class="focus_grabber last"></div>
</div>
</div>
</div>
<div class="vert vert-1" data-id="block-v1:MITx+8.371.3x+2T2018+type@html+block@site_search_box11">
<div class="xblock xblock-public_view xblock-public_view-html xmodule_display xmodule_HtmlBlock" data-has-score="False" data-block-type="html" data-runtime-version="1" data-usage-id="block-v1:MITx+8.371.3x+2T2018+type@html+block@site_search_box11" data-runtime-class="LmsRuntime" data-graded="True" data-request-token="5c42ef8000b811f0b93716ffe7e42b4b" data-init="XBlockToXModuleShim" data-course-id="course-v1:MITx+8.371.3x+2T2018">
<script type="json/xblock-args" class="xblock-json-init-args">
{"xmodule-type": "HTMLModule"}
</script>
<span><a href="/asset-v1:MITx+8.371.3x+2T2018+type@asset+block/NONE" id="dummy_course_static_link" style="display:none"/><a href="/courses/course-v1:MITx+8.371.3x+2T2018/jump_to_id/NONE" id="dummy_jump_link" style="display:none"/><script type="text/javascript">
var add_site_search = function(){
course_static_url = $('#dummy_course_static_link').attr('href').replace('/NONE', '');
jump_to_url = $('#dummy_jump_link').attr('href').replace('/NONE', '');
if (typeof String.prototype.startsWith != 'function') {
// see below for better implementation!
String.prototype.startsWith = function (str){
return this.indexOf(str) === 0;
};
}
if(typeof(String.prototype.trim) === "undefined")
{
String.prototype.trim = function()
{
return String(this).replace(/^\s+|\s+$/g, '');
};
}
var lb = String.fromCharCode(60);
var rb = String.fromCharCode(62);
var amp = String.fromCharCode(38);
var rlb = rb + lb;
var mke = function(x){ return lb + x + rb; }
var search_module_url = "";
var get_search_module_ficus = function(){
var cid = $('div.xblock').data('course-id');
if (cid){
console.log("cid = ", cid);
// search_module_url = "/courses/course-v1:MITx+8.371.3x+2T2018/" + cid + "/courseware/welcome/Search_this_course/";
search_module_url = "/courses/course-v1:MITx+8.371.3x+2T2018/courseware/welcome/Search_this_course/"; // automatically rewritten
console.log("3. search_module_url = ", search_module_url);
return;
}
var course_root_link = $('span.nav-item-course').find('a').attr('href');
if (course_root_link){
console.log("course_root_link = ", course_root_link);
search_module_url = course_root_link.replace("course/", "courseware/welcome/Search_this_course/");
console.log("2. search_module_url = ", search_module_url);
return
}
console.log("cannot determine search module url");
}
var get_search_module = function(){
// find search this module link
if (!($('div.course-index').length)){
return get_search_module_ficus();
}
$('div.course-index').find('nav').find('a').each(function(){
if ($(this).text().trim().startsWith("Search this course")){
search_module_url = $(this).attr('href');
console.log("search_module_url = ", search_module_url);
}
});
}
var go_to_search = function(){
get_search_module();
var sterm = $('#site-search-box').val();
// new_url = jump_to_url + "/Search_this_module/?q=" + sterm;
new_url = search_module_url + "?q=" + sterm;
console.log("sterm = ", sterm, " ; going to ", new_url);
window.location.href = new_url;
}
if (!$('#site-search-box').length){
$("nav.courseware").find("ol").append(lb + "section style='float:right'" + rlb + "input size='20'"
+ " id='site-search-box'"
+ rlb + "img src='" + course_static_url
+ "/images_search_glass.png'/" + rlb + "/input" + rlb + "/section" + rb);
}
$("#site-search-box").keypress(function(event) {
if (event.which == 13) {
event.preventDefault();
go_to_search();
}
});
// $('#site-search-box').bind("enterKey", go_to_search);
var get = function(x){
return eval(x);
}
return {'course_static_url': course_static_url,
'jump_to_url': jump_to_url,
'go_to_search': go_to_search,
'get_search_module': get_search_module,
'get_search_module_ficus': get_search_module_ficus,
'get': get,
}
}
var the_site_search = add_site_search();
var add_fix_transcript = function(){
if ($('div.wrap-instructor-info').length==0){
return;
}
$('div.xblock-student_view-video').each(function(key, vblock_e){
var vblock = $(vblock_e);
var vuid = vblock.data('usage-id').split('@');
var vid;
if (vuid.length==1){
vuid = vblock.data('usage-id').split(';_')
vid = vuid[5];
}else{
vid = vuid[2];
}
var mfnpre = vid.split("_video",1)[0];
var mfnid = mfnpre; // no periods
mfnpre = mfnpre.replace('8_370', '8.370'); // periods in gh filename
var lb = String.fromCharCode(60);
var rb = String.fromCharCode(62);
var mke = function(x){ return lb + x + rb; }
var ftid = "fix_transcript_" + mfnid;
if (!$('#' + ftid).length){
var html = lb + "span id='" + ftid + "' style='float:right'" + rb + lb + "a href='#'" + rb;
html += "contribute transcript fix" + mke("/a") + mke("/span");
console.log("html = ", html);
vblock.after(html)
}
$('#' + ftid).click(function(){
var cst = $('ol.subtitles').find('li.current');
var cindex = Number(cst.data('index'));
var gurl;
if (mfnpre.endsWith('_cq_sol')){
gurl = "https://github.com/mitocw/content-mit-8370x-cq-sol-subtitles/blob/master/";
}else{
gurl = "https://github.com/mitocw/content-mit-8370x-subtitles/blob/master/";
}
gurl += mfnpre + ".txt#L" + String(cindex + 10 + 1);
console.log("going to ", gurl);
window.open(gurl, "MITx 8.370x subtitle source");
});
});
}
try{
add_fix_transcript();
}
catch(err){
console.log(err);
}
try{
var rb = String.fromCharCode(62);
setTimeout(function(){ $('.math' + rb + 'span').css("border-left-color","transparent"); }, 3000);
setTimeout(function(){ $('.math' + rb + 'span').css("border-left-color","transparent"); }, 8000);
}
catch(err){
console.log(err);
}
</script></span>
</div>
</div>
</div>
</div>
<div class="xblock xblock-public_view xblock-public_view-vertical" data-has-score="False" data-block-type="vertical" data-runtime-version="1" data-usage-id="block-v1:MITx+8.371.3x+2T2018+type@vertical+block@CQ_Noisy_coding_theorem" data-runtime-class="LmsRuntime" data-graded="True" data-request-token="5c42ef8000b811f0b93716ffe7e42b4b" data-init="VerticalStudentView" data-course-id="course-v1:MITx+8.371.3x+2T2018">
<h2 class="hd hd-2 unit-title">CQ: Noisy coding theorem</h2>
<div class="vert-mod">
<div class="vert vert-0" data-id="block-v1:MITx+8.371.3x+2T2018+type@problem+block@cq_M2L20_LB_Noisy_coding_theorem_RB">
<div class="xblock xblock-public_view xblock-public_view-problem xmodule_display xmodule_ProblemBlock" data-has-score="True" data-block-type="problem" data-runtime-version="1" data-usage-id="block-v1:MITx+8.371.3x+2T2018+type@problem+block@cq_M2L20_LB_Noisy_coding_theorem_RB" data-runtime-class="LmsRuntime" data-graded="True" data-request-token="5c42ef8000b811f0b93716ffe7e42b4b" data-init="XBlockToXModuleShim" data-course-id="course-v1:MITx+8.371.3x+2T2018">
<script type="json/xblock-args" class="xblock-json-init-args">
{"xmodule-type": "Problem"}
</script>
<div id="problem_cq_M2L20_LB_Noisy_coding_theorem_RB" class="problems-wrapper" role="group"
aria-labelledby="cq_M2L20_LB_Noisy_coding_theorem_RB-problem-title"
data-problem-id="block-v1:MITx+8.371.3x+2T2018+type@problem+block@cq_M2L20_LB_Noisy_coding_theorem_RB" data-url="/courses/course-v1:MITx+8.371.3x+2T2018/xblock/block-v1:MITx+8.371.3x+2T2018+type@problem+block@cq_M2L20_LB_Noisy_coding_theorem_RB/handler/xmodule_handler"
data-problem-score="0"
data-problem-total-possible="1"
data-attempts-used="0"
data-content="
<h3 class="hd hd-3 problem-header" id="cq_M2L20_LB_Noisy_coding_theorem_RB-problem-title" aria-describedby="block-v1:MITx+8.371.3x+2T2018+type@problem+block@cq_M2L20_LB_Noisy_coding_theorem_RB-problem-progress" tabindex="-1">
Noisy coding theorem
</h3>
<div class="problem-progress" id="block-v1:MITx+8.371.3x+2T2018+type@problem+block@cq_M2L20_LB_Noisy_coding_theorem_RB-problem-progress"></div>
<div class="problem">
<div>
<p>
This is a concept question, provided to check your understanding of the previous lecture video clips. </p>
<p>
Which of the following are true? </p>
<p>
<div class="wrapper-problem-response" tabindex="-1" aria-label="Question 1" role="group"><div class="choicegroup capa_inputtype" id="inputtype_cq_M2L20_LB_Noisy_coding_theorem_RB_2_1">
<fieldset aria-describedby="status_cq_M2L20_LB_Noisy_coding_theorem_RB_2_1">
<div class="field">
<input type="checkbox" name="input_cq_M2L20_LB_Noisy_coding_theorem_RB_2_1[]" id="input_cq_M2L20_LB_Noisy_coding_theorem_RB_2_1_choice_0" class="field-input input-checkbox" value="choice_0"/><label id="cq_M2L20_LB_Noisy_coding_theorem_RB_2_1-choice_0-label" for="input_cq_M2L20_LB_Noisy_coding_theorem_RB_2_1_choice_0" class="response-label field-label label-inline" aria-describedby="status_cq_M2L20_LB_Noisy_coding_theorem_RB_2_1">
<text>There is no hope in recovering a message from a binary symmetric channel if the probability of bit flip is 1.</text>
</label>
</div>
<div class="field">
<input type="checkbox" name="input_cq_M2L20_LB_Noisy_coding_theorem_RB_2_1[]" id="input_cq_M2L20_LB_Noisy_coding_theorem_RB_2_1_choice_1" class="field-input input-checkbox" value="choice_1"/><label id="cq_M2L20_LB_Noisy_coding_theorem_RB_2_1-choice_1-label" for="input_cq_M2L20_LB_Noisy_coding_theorem_RB_2_1_choice_1" class="response-label field-label label-inline" aria-describedby="status_cq_M2L20_LB_Noisy_coding_theorem_RB_2_1">
<text>We can transmit a message with constant size overhead through a binary symmetric channel using a repetition code.</text>
</label>
</div>
<div class="field">
<input type="checkbox" name="input_cq_M2L20_LB_Noisy_coding_theorem_RB_2_1[]" id="input_cq_M2L20_LB_Noisy_coding_theorem_RB_2_1_choice_2" class="field-input input-checkbox" value="choice_2"/><label id="cq_M2L20_LB_Noisy_coding_theorem_RB_2_1-choice_2-label" for="input_cq_M2L20_LB_Noisy_coding_theorem_RB_2_1_choice_2" class="response-label field-label label-inline" aria-describedby="status_cq_M2L20_LB_Noisy_coding_theorem_RB_2_1">
<text>The noisy coding theorem allows us to transmit a message that is encoded with constant size overhead.</text>
</label>
</div>
<div class="field">
<input type="checkbox" name="input_cq_M2L20_LB_Noisy_coding_theorem_RB_2_1[]" id="input_cq_M2L20_LB_Noisy_coding_theorem_RB_2_1_choice_3" class="field-input input-checkbox" value="choice_3"/><label id="cq_M2L20_LB_Noisy_coding_theorem_RB_2_1-choice_3-label" for="input_cq_M2L20_LB_Noisy_coding_theorem_RB_2_1_choice_3" class="response-label field-label label-inline" aria-describedby="status_cq_M2L20_LB_Noisy_coding_theorem_RB_2_1">
<text>The capacity of a channel is a constant that only depends on the channel.</text>
</label>
</div>
<span id="answer_cq_M2L20_LB_Noisy_coding_theorem_RB_2_1"/>
</fieldset>
<div class="indicator-container">
<span class="status unanswered" id="status_cq_M2L20_LB_Noisy_coding_theorem_RB_2_1" data-tooltip="Not yet answered.">
<span class="sr">unanswered</span><span class="status-icon" aria-hidden="true"/>
</span>
</div>
</div></div>
</p>
</div>
<div class="action">
<input type="hidden" name="problem_id" value="Noisy coding theorem" />
<div class="submit-attempt-container">
<button type="button" class="submit btn-brand" data-submitting="Submitting" data-value="Submit" data-should-enable-submit-button="True" aria-describedby="submission_feedback_cq_M2L20_LB_Noisy_coding_theorem_RB" >
<span class="submit-label">Submit</span>
</button>
<div class="submission-feedback" id="submission_feedback_cq_M2L20_LB_Noisy_coding_theorem_RB">
<span class="sr">Some problems have options such as save, reset, hints, or show answer. These options follow the Submit button.</span>
</div>
</div>
<div class="problem-action-buttons-wrapper">
<span class="problem-action-button-wrapper">
<button type="button" class="save problem-action-btn btn-default btn-small" data-value="Save">
<span class="icon fa fa-floppy-o" aria-hidden="true"></span>
<span aria-hidden="true">Save</span>
<span class="sr">Save your answer</span>
</button>
</span>
</div>
</div>
<div class="notification warning notification-gentle-alert
is-hidden"
tabindex="-1">
<span class="icon fa fa-exclamation-circle" aria-hidden="true"></span>
<span class="notification-message" aria-describedby="cq_M2L20_LB_Noisy_coding_theorem_RB-problem-title">
</span>
<div class="notification-btn-wrapper">
<button type="button" class="btn btn-default btn-small notification-btn review-btn sr">Review</button>
</div>
</div>
<div class="notification warning notification-save
is-hidden"
tabindex="-1">
<span class="icon fa fa-save" aria-hidden="true"></span>
<span class="notification-message" aria-describedby="cq_M2L20_LB_Noisy_coding_theorem_RB-problem-title">None
</span>
<div class="notification-btn-wrapper">
<button type="button" class="btn btn-default btn-small notification-btn review-btn sr">Review</button>
</div>
</div>
<div class="notification general notification-show-answer
is-hidden"
tabindex="-1">
<span class="icon fa fa-info-circle" aria-hidden="true"></span>
<span class="notification-message" aria-describedby="cq_M2L20_LB_Noisy_coding_theorem_RB-problem-title">Answers are displayed within the problem
</span>
<div class="notification-btn-wrapper">
<button type="button" class="btn btn-default btn-small notification-btn review-btn sr">Review</button>
</div>
</div>
</div>
"
data-graded="True">
<p class="loading-spinner">
<i class="fa fa-spinner fa-pulse fa-2x fa-fw"></i>
<span class="sr">Loading…</span>
</p>
</div>
</div>
</div>
<div class="vert vert-1" data-id="block-v1:MITx+8.371.3x+2T2018+type@html+block@site_search_box3">
<div class="xblock xblock-public_view xblock-public_view-html xmodule_display xmodule_HtmlBlock" data-has-score="False" data-block-type="html" data-runtime-version="1" data-usage-id="block-v1:MITx+8.371.3x+2T2018+type@html+block@site_search_box3" data-runtime-class="LmsRuntime" data-graded="True" data-request-token="5c42ef8000b811f0b93716ffe7e42b4b" data-init="XBlockToXModuleShim" data-course-id="course-v1:MITx+8.371.3x+2T2018">
<script type="json/xblock-args" class="xblock-json-init-args">
{"xmodule-type": "HTMLModule"}
</script>
<span><a href="/asset-v1:MITx+8.371.3x+2T2018+type@asset+block/NONE" id="dummy_course_static_link" style="display:none"/><a href="/courses/course-v1:MITx+8.371.3x+2T2018/jump_to_id/NONE" id="dummy_jump_link" style="display:none"/><script type="text/javascript">
var add_site_search = function(){
course_static_url = $('#dummy_course_static_link').attr('href').replace('/NONE', '');
jump_to_url = $('#dummy_jump_link').attr('href').replace('/NONE', '');
if (typeof String.prototype.startsWith != 'function') {
// see below for better implementation!
String.prototype.startsWith = function (str){
return this.indexOf(str) === 0;
};
}
if(typeof(String.prototype.trim) === "undefined")
{
String.prototype.trim = function()
{
return String(this).replace(/^\s+|\s+$/g, '');
};
}
var lb = String.fromCharCode(60);
var rb = String.fromCharCode(62);
var amp = String.fromCharCode(38);
var rlb = rb + lb;
var mke = function(x){ return lb + x + rb; }
var search_module_url = "";
var get_search_module_ficus = function(){
var cid = $('div.xblock').data('course-id');
if (cid){
console.log("cid = ", cid);
// search_module_url = "/courses/course-v1:MITx+8.371.3x+2T2018/" + cid + "/courseware/welcome/Search_this_course/";
search_module_url = "/courses/course-v1:MITx+8.371.3x+2T2018/courseware/welcome/Search_this_course/"; // automatically rewritten
console.log("3. search_module_url = ", search_module_url);
return;
}
var course_root_link = $('span.nav-item-course').find('a').attr('href');
if (course_root_link){
console.log("course_root_link = ", course_root_link);
search_module_url = course_root_link.replace("course/", "courseware/welcome/Search_this_course/");
console.log("2. search_module_url = ", search_module_url);
return
}
console.log("cannot determine search module url");
}
var get_search_module = function(){
// find search this module link
if (!($('div.course-index').length)){
return get_search_module_ficus();
}
$('div.course-index').find('nav').find('a').each(function(){
if ($(this).text().trim().startsWith("Search this course")){
search_module_url = $(this).attr('href');
console.log("search_module_url = ", search_module_url);
}
});
}
var go_to_search = function(){
get_search_module();
var sterm = $('#site-search-box').val();
// new_url = jump_to_url + "/Search_this_module/?q=" + sterm;
new_url = search_module_url + "?q=" + sterm;
console.log("sterm = ", sterm, " ; going to ", new_url);
window.location.href = new_url;
}
if (!$('#site-search-box').length){
$("nav.courseware").find("ol").append(lb + "section style='float:right'" + rlb + "input size='20'"
+ " id='site-search-box'"
+ rlb + "img src='" + course_static_url
+ "/images_search_glass.png'/" + rlb + "/input" + rlb + "/section" + rb);
}
$("#site-search-box").keypress(function(event) {
if (event.which == 13) {
event.preventDefault();
go_to_search();
}
});
// $('#site-search-box').bind("enterKey", go_to_search);
var get = function(x){
return eval(x);
}
return {'course_static_url': course_static_url,
'jump_to_url': jump_to_url,
'go_to_search': go_to_search,
'get_search_module': get_search_module,
'get_search_module_ficus': get_search_module_ficus,
'get': get,
}
}
var the_site_search = add_site_search();
var add_fix_transcript = function(){
if ($('div.wrap-instructor-info').length==0){
return;
}
$('div.xblock-student_view-video').each(function(key, vblock_e){
var vblock = $(vblock_e);
var vuid = vblock.data('usage-id').split('@');
var vid;
if (vuid.length==1){
vuid = vblock.data('usage-id').split(';_')
vid = vuid[5];
}else{
vid = vuid[2];
}
var mfnpre = vid.split("_video",1)[0];
var mfnid = mfnpre; // no periods
mfnpre = mfnpre.replace('8_370', '8.370'); // periods in gh filename
var lb = String.fromCharCode(60);
var rb = String.fromCharCode(62);
var mke = function(x){ return lb + x + rb; }
var ftid = "fix_transcript_" + mfnid;
if (!$('#' + ftid).length){
var html = lb + "span id='" + ftid + "' style='float:right'" + rb + lb + "a href='#'" + rb;
html += "contribute transcript fix" + mke("/a") + mke("/span");
console.log("html = ", html);
vblock.after(html)
}
$('#' + ftid).click(function(){
var cst = $('ol.subtitles').find('li.current');
var cindex = Number(cst.data('index'));
var gurl;
if (mfnpre.endsWith('_cq_sol')){
gurl = "https://github.com/mitocw/content-mit-8370x-cq-sol-subtitles/blob/master/";
}else{
gurl = "https://github.com/mitocw/content-mit-8370x-subtitles/blob/master/";
}
gurl += mfnpre + ".txt#L" + String(cindex + 10 + 1);
console.log("going to ", gurl);
window.open(gurl, "MITx 8.370x subtitle source");
});
});
}
try{
add_fix_transcript();
}
catch(err){
console.log(err);
}
try{
var rb = String.fromCharCode(62);
setTimeout(function(){ $('.math' + rb + 'span').css("border-left-color","transparent"); }, 3000);
setTimeout(function(){ $('.math' + rb + 'span').css("border-left-color","transparent"); }, 8000);
}
catch(err){
console.log(err);
}
</script></span>
</div>
</div>
</div>
</div>
Information theory - overview
Information theory - overview
No playable video sources found.
Your browser does not support this video format. Try using a different browser.
0:00 / 0:00
Press UP to enter the speed menu then use the UP and DOWN arrow keys to navigate the different speeds, then press ENTER to change to the selected speed.
Click on this button to mute or unmute this video or press UP or DOWN buttons to increase or decrease volume level.
Maximum Volume.
Video transcript
- Start of transcript. Skip to the end.
- The field of information theory asks questions about--
- how efficiently can we store and transmit information,
- protect it against errors, communicate it secretly,
- figure out things in a distributed setting?
- Basically, all the questions about-- what
- is the information content of a message,
- and what is its nature, and what can we do with it?
- It generally avoids questions of--
- how hard is it to compute these things?
- So when we talk about error-correcting codes,
- we worry a lot about making the decoder efficient.
- Can I do this in a fault-tolerant way?
- And so on.
- Information theory, in general, does not
- look at these questions.
- Or maybe it doesn't first look at these questions.
- It first looks at the question of--
- what is the ultimate rate of bits that I
- can get through this channel?
- And then only later says--
- and can I do that efficiently on a computer?
- And as a result, it lets us sometimes
- give very sharp answers to questions of--
- how much can I transmit?
- Or how large of a secret message can I
- transmit, if my only limitation is the communication channel
- that I have?
- And one thing that's nice about this--
- so you get the sharp bounds.
- It also gives you a number of information theoretic
- quantities, things like entropies
- and mutual information and ways of measuring correlation, that
- have been useful not only for the study of transmitting
- information, but for problems in statistical physics,
- things like topological order.
- Sometimes there's application to algorithms,
- to understanding data sets.
- So the ideas of entropy that started off
- in information theory have been used pretty widely.
- And so today, I'm going to describe
- the core ideas of classical information theory that
- came from Claude Shannon's 1948 paper.
- So some of you may be super familiar with it.
- Some of you may not have come across it so much.
- And here he laid out two key problems in information theory.
- One of them is compression, and the other one
- is channel coding.
- So compression he referred to as his--
- he did not give these the best names,
- I would say-- the noiseless coding theorem.
- And channel coding-- meaning, if I want to send a message
- through a noisy channel and have the receiver reconstruct
- the message faithfully, how can I do that--
- he called the noisy coding theorem.
- And he gave the optimal rates at which both of these tasks
- can be achieved.
- And he defined them in terms of various quantities
- involving entropies.
- End of transcript. Skip to the start.
© All Rights Reserved