1 Star 0 Fork 0

zqzuo / z-zhiqiang.github.io

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
index-chinese.html 29.97 KB
AI 代码解读
一键复制 编辑 原始数据 按行查看 历史
Zhiqiang Zuo 提交于 2020-08-03 23:22 . Add files via upload
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691
<!-- saved from url=(0037)http://www.comp.nus.edu.sg/~a0068965/ -->
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<style>
/* body {font-family: "Lato", sans-serif;} */
/* Style the tab */
div.tab {
overflow: hidden;
border: none;
background-color: #f1f1f1;
}
/* Style the buttons inside the tab */
div.tab button {
background-color: inherit;
float: left;
border: none;
outline: none;
cursor: pointer;
padding: 14px 16px;
transition: 0.3s;
font-size: 17px;
}
/* Change background color of buttons on hover */
div.tab button:hover {
background-color: #ddd;
}
/* Create an active/current tablink class */
div.tab button.active {
background-color: #ccc;
}
/* Style the tab content */
.tabcontent {
display: none;
padding: 6px 12px;
border: none;
border-top: 2px solid #ccc;
}
.newcontent{
height: 150px;
overflow-y: scroll;
display: block;
text-align: left;
border: none;
margin:10px 0 10px 0;
}
.oldcontent{
height: 150px;
overflow-y: scroll;
display: none;
text-align: left;
border: none;
margin:10px 0 10px 0;
}
div.scroll {
height: 100px;
overflow-y: scroll;
}
.columnBlockTitle{
font-size:18px;
font-weight:bold;
}
</style>
<title>Zhiqiang Zuo's Home Page</title>
</head>
<body bgcolor="white" lang="EN-US" link="Teal" vlink="purple"
style="tab-interval: .5in" alink="green">
<div class="Section1">
<div align="center">
<table class="MsoNormalTable" border="0" cellpadding="0" width="75%"
style="width: 75.16%; mso-cellspacing: 1.5pt; mso-yfti-tbllook: 1184; mso-padding-alt: 0in 5.4pt 0in 5.4pt">
<tbody>
<tr
style="mso-yfti-irow: 0; mso-yfti-firstrow: yes; mso-yfti-lastrow: yes">
<td width="99%"
style="width: 99.3%; padding: .75pt .75pt .75pt .75pt">
<table class="MsoNormalTable" border="0" cellpadding="0"
width="100%"
style="width: 100.0%; mso-cellspacing: 1.5pt; mso-yfti-tbllook: 1184; mso-padding-alt: 0in 5.4pt 0in 5.4pt">
<tbody>
<tr
style="mso-yfti-irow: 0; mso-yfti-firstrow: yes; mso-yfti-lastrow: yes">
<td width="72%"
style="width: 72.54%; padding: .75pt .75pt .75pt .75pt">
<h2>
左志强<u></u>
</h2>
<p class="MsoNormal">
助理研究员 <br>
<!-- Advisor: <a href="http://www.ics.uci.edu/~guoqingx/">Harry Xu</a> -->
<a href="http://www.cs.nju.edu.cn/">计算机科学与技术系</a><br>
<a href="http://www.nju.edu.cn/">南京大学</a><br>
</p>
<p class="MsoNormal">
办公室: 计算机科学技术楼719室<br>
电子邮箱: zqzuo AT nju DOT edu DOT cn<br>
地址: 南京市栖霞区仙林大道163号
</p>
</td>
<td width="27%"
style="width: 27.74%; padding: .75pt .75pt .75pt .75pt">
<p class="MsoNormal">
<span style="mso-no-proof: yes"></span>
</p>
<img alt="Zhiqiang Zuo" border="0" height="220" src="zuo.png"
width="190">
<div style="display: inline; margin: 5px 10px; float: center">
</div>
</td>
</tr>
</tbody>
</table> <span style="display: block; height: 3pt;"></span>
<div class="tab">
<button class="tablinks" onclick="openCity(event, 'Home')"
id="defaultOpen">主页</button>
<button class="tablinks"
onclick="openCity(event, 'Publications')">论文</button>
<button class="tablinks" onclick="openCity(event, 'Research')">科研</button>
<button class="tablinks" onclick="openCity(event, 'Services')">服务</button>
<!-- <button class="tablinks" onclick="openCity(event, 'Students')">学生</button> -->
<button class="tablinks" onclick="openCity(event, 'Teaching')">教学</button>
<button class="tablinks"
onclick="openCity(event, 'Miscellaneous')">其他</button>
</div>
<div id="Miscellaneous" class="tabcontent">
<h3 style="color: darkblue">Special Links</h3>
<ul type="disc">
<!--
<li class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:
auto;mso-list:l3 level1 lfo6;tab-stops:list .5in"><a href="http://www.sigplan.org/Conferences/"> SIGPLAN Conferences</a> </li>
<li class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:
auto;mso-list:l3 level1 lfo6;tab-stops:list .5in"><a href="http://taoxie.cs.illinois.edu/community/index.html"> SE Research Community Websites </a> </li>
-->
<li class="MsoNormal"
style="mso-margin-top-alt: auto; mso-margin-bottom-alt: auto; mso-list: l3 level1 lfo6; tab-stops: list .5in"><a
href="http://www.confsearch.org/confsearch/"> Confsearch
Link</a></li>
<li class="MsoNormal"
style="mso-margin-top-alt: auto; mso-margin-bottom-alt: auto; mso-list: l3 level1 lfo6; tab-stops: list .5in"><a
href="http://history.ccf.org.cn/sites/ccf/paiming.jsp">
CCF Rankings</a></li>
</ul>
</div>
<div id="Home" class="tabcontent">
<h3 style="color: darkblue">简介</h3>
<p class="MsoNormal">
本人现就职于南京大学计算机科学与技术系,任讲师(科研助理教授)。
2010年至2015年在新加坡国立大学计算机系攻读博士学位。
2015年至2018年,曾在美国加州大学欧文分校计算机系从事博士后研究工作。
</p>
<p class="MsoNormal">
以下是个人<a
href="https://drive.google.com/file/d/0B58Jj9Us3ouQYUxkWHJZXzNfdlU/view?usp=sharing"
style="text-decoration: underline">简历</a>.
</p>
<span style="display: block; height: 0pt;"></span>
<h3 style="color: darkblue">研究兴趣</h3>
<!--
<p class="MsoNormal"></p>
<ul type="disc">
<li class="MsoNormal"
style="mso-margin-top-alt: auto; mso-margin-bottom-alt: auto; mso-list: l2 level1 lfo3; tab-stops: list .5in">
Automated debugging</li>
<li class="MsoNormal"
style="mso-margin-top-alt: auto; mso-margin-bottom-alt: auto; mso-list: l2 level1 lfo3; tab-stops: list .5in">
Program analysis</li>
<li class="MsoNormal"
style="mso-margin-top-alt: auto; mso-margin-bottom-alt: auto; mso-list: l2 level1 lfo3; tab-stops: list .5in">
Parallel and Distributed computing</li>
<li class="MsoNormal"
style="mso-margin-top-alt: auto; mso-margin-bottom-alt: auto; mso-list: l2 level1 lfo3; tab-stops: list .5in">
Big Data systems</li>
<li class="MsoNormal"
style="mso-margin-top-alt:auto;mso-margin-bottom-alt: auto;mso-list:l2 level1 lfo3;tab-stops:list .5in">
Specification mining</li>
</ul>
-->
<p class="MsoNormal">
本人研究兴趣涉及编程语言、软件工程、并行/分布式计算,以及大数据系统。
<i><strong>近期研究重点:从系统角度出发,研究、解决编程语言、软件工程领域一系列传统难题,
通过构建开发一系列特定优化的大数据系统来实现高可扩展性的程序分析、程序自动生成、以及SAT求解等。
</strong></i>
</p>
<span style="display: block; height: 10px;"></span>
<div class="columnBlockTitle" style="color: darkblue">最新消息</div>
<div class="scroll">
<ul type="disc">
<li class="MsoNormal"
style="mso-margin-top-alt: auto; mso-margin-bottom-alt: auto; mso-list: l3 level1 lfo6; tab-stops: list .5in">
<i><font color="red" size="4">I will join the Department of Computer Science at Nanjing University
as an Assistant Professor soon.</font></i>
</li>
<li class="MsoNormal"
style="mso-margin-top-alt: auto; mso-margin-bottom-alt: auto; mso-list: l3 level1 lfo6; tab-stops: list .5in">
<i><font color="black" size="3">[2017.12] I have been invited to be a committee member in <a href="https://conf.researchr.org/committee/splash-2018/splash-2018-oopsla-artifacts-artifact-evaluation-committee" style="text-decoration: none;">Artifact Evaluation Committee</a> of <a href="https://conf.researchr.org/track/splash-2018/splash-2018-OOPSLA" style="text-decoration: none;">OOPSLA'2018</a>.</font></i>
</li>
</ul>
</div>
</div>
</div>
<div id="Teaching" class="tabcontent">
<!-- <h3 style="color: darkblue">Instructor</h3> -->
<h3 style="color: darkblue">Teaching Assistant</h3>
<ul type="disc">
<li style="margin-bottom: 5px;">NUS <em>CS5218:
Principles of Program Analysis</em> in Semester 2, 2012/2013
</li>
<li style="margin-bottom: 5px;">NUS <em>CS5218:
Principles of Program Analysis</em> in Semester 2, 2013/2014
</li>
</ul>
</div>
<div id="Services" class="tabcontent">
<h3 style="color: darkblue">Artifact Evaluation Committee</h3>
<ul type="disc">
<li style="margin-bottom: 5px;">2018: OOPSLA</li>
</ul>
<h3 style="color: darkblue">Reviewer</h3>
<ul type="disc">
<li style="margin-bottom: 5px;">2017: ASPLOS, ENASE,
ISCA-AGP</li>
<li style="margin-bottom: 5px;">2016: ECOOP, ISMM, FSE-SRC</li>
<li style="margin-bottom: 5px;">2015: ISSTA</li>
</ul>
</div>
<div id="Research" class="tabcontent">
<h3 style="color: darkblue">Projects</h3>
<ul>
<li><b>BigSAT: A Distributed SAT Solver on Spark</b>
<ul>
<li onclick="myNewFunction('bigsat')">Abstract: <u>click</u></li>
<div id="bigsat" class="newcontent">
The Boolean Satisfiability (a.k.a. SAT)
problem is one of the most important problems in
mathematical logic and computing theory. It serves as the
foundation for a wide range of applications, including
hardware/software verification, model checking, theorem
proving, cryptography, computational biology, planning, and
so on. Despite the significant advances in the research of
SAT solving over the past decade, modern SAT solvers are
still far from being satisfactory. Driven by the insight
that multi-core systems and computing clusters are becoming
increasingly accessible to regular developers, the aim of
the BigSAT project is to develop parallel and distributed
solvers that leverage these modern computing resources to
solve very large SAT instances. Although there already exist
many parallel solvers, all of these existing solvers are
based on the Davis-Putnam-Logemann-Loveland (DPLL) procedure
with clause learning, which performs backtracking search and
suffers from poor scalability. This project revisits the SAT
problem from a “Big Data” perspective. We shift our focus to
a long overlooked algorithm, called the DP procedure, that
consists of a sequence of explicit resolutions to eliminate
the propositional variables one at a time. DP consumes more
memory but exhibits data parallelism, lending itself to
systems optimizations that achieve efficiency and
scalability by utilizing large computing resources. Based on
this insight, we develop BigSAT, a distributed SAT solver on
Spark . We devise a novel Bulk Synchronous Parallel DP
algorithm particularly tailored to cluster computing,
leading to minimized network computation costs. Moreover, by
applying efficient data structures (e.g., ZBDDs) and
effective load balancing strategy, our distributed SAT
solver supposes to be able to sufficiently take advantage of
the computation resources and achieve promising scalability.
</div>
</ul></li>
<br>
<li><b>Distributed Graspan: A Scalable Static Analysis
Engine in the Cloud</b>
<ul>
<li onclick="myNewFunction('disgraspan')">Abstract: <u>click</u></li>
<div id="disgraspan" class="newcontent">
We developed Graspan – a single-machine
disk-based engine for scalable static analysis. Graspan
makes it possible to perform fully context-sensitive
analyses on Linux kernel codebase (16M lines of code) by
utilizing disk spaces. However, it takes us more than 10
hours to finish running. In order to shorten the time costs,
further improving its scalability, we are planning to extend
Graspan to the substantially more challenging distributed
setting. We would like to propose the Distributed Graspan –
a distributed engine readily running on a cluster of
hundreds or thousands of commodity computers. Distributed
Graspan will be built on the top of Spark by implementing
the novel distributed <em>edge-pair centric</em> computation
model. By proposing the advanced partitioning schemes and
load balancing strategies, we are confident to make
Distributed Graspan highly scalable.
</div>
</ul></li>
<br>
<li><b>Graspan: A Scalable Parallel Disk-based Static
Analyses Engine</b>
<ul>
<li onclick="myNewFunction('graspan')">Abstract: <u>click</u></li>
<div id="graspan" class="newcontent">
Static program analyses are widely used
along the whole process of software development for bug
detection, code optimization, testing, debugging etc.
Unfortunately, a context-sensitive interprocedural analysis
is often not scalable enough to analyze large codebases such
as the Linux kernel. The high complexity of
context-sensitivity makes the analysis both computation- and
memory-intensive. Furthermore, most interprocedural analyses
are difficult to parallelize, because they frequently
involve decision making based on information discovered
dynamically. In this work, we revisit the scalability
problem of interprocedural static analysis from a Big Data
perspective. That is, we turn Big Code analysis into Big
Data analytics and leverage novel data processing techniques
to solve this traditional programming language problem. Our
key observation is that many interprocedural analyses can be
formulated as a graph reachability problem. Therefore, we
turn the programs into graphs and treat the analysis as
graph traversal. We represent transitive edges explicitly
rather than implicitly by physically adding transitive edges
into the program graph, providing us a large (evolving)
dataset to process and a simple enough computation logic
which is to match the labels of consecutive edges with the
production rules. This approach opens up opportunities to
leverage parallel graph processing systems to analyze large
programs efficiently. We develop Graspan, a disk-based
parallel graph system that uses an edge-pair centric
computation model to compute dynamic transitive closures on
large program graphs. We implement fully context-sensitive
pointer/alias and dataflow analyses on Graspan. An
evaluation of these analyses on large codebases such as
Linux shows that their Graspan implementations scale to
millions of lines of code and are much simpler than their
original implementations. Moreover, we show that these
analyses can be used to augment existing checkers for bug
finding; these augmented checkers uncovered a total of 85
potential bugs and 1308 unnecessary NULL tests.
</div>
<li>Paper: accepted to <a
href="https://dl.acm.org/citation.cfm?id=3037744">ASPLOS’17</a>.
</li>
<li>Code: released via <a
href="https://github.com/Graspan">Github</a>.
</li>
</ul></li>
<br>
<li><b>Scalable Statistical Debugging via Abstraction
Refinement</b>
<ul>
<li onclick="myOldFunction('sdar')">Abstract: <u>click</u></li>
<div id="sdar" class="oldcontent">
Statistical debugging approaches have been
well investigated over the past decade, which basically
collect failing and passing executions and apply statistical
techniques to identify discriminative elements as potential
bug causes. Most of these approaches instrument the entire
program to produce execution profiles for debugging.
Consequently, they often incur hefty instrumentation and
analysis cost. However, as in fact major part of the program
code is error-free, full-scale program instrumentation is
wasteful and unnecessary. We propose a general, rigorous,
and automated predicate-space pruning technique for
statistical debugging Our technique only needs to instrument
and analyze partial code. While guided by a mathematically
rigorous analysis, our technique is guaranteed to produce
the same debugging results as an exhaustive analysis in
deterministic settings. Our technique is inspired by --- and
formulated as an instance of --- the <em>abstraction
refinement</em> framework. Our key observation is simple:
predicates are concrete program entities constituting a huge
space; profiling and analyzing them directly is doomed to
result in a high cost. If we can raise the abstraction level
by first profiling and analyzing data from coarse-grained
program entities (e.g., functions), we may obtain a bird-eye
view of how each coarse-grained entity is correlated with a
failure. This view may then help us decide, (1) which
coarse-grained entity should be refined, with all the
fine-grained entities (e.g., predicates) it represents
profiled and analyzed, and (2) which coarse-grained entity
does not need to be refined, with all the fine-grained
entities it represents pruned away. We apply this technique
to two different statistical debugging scenarios: in-house
and production-run statistical debugging The experiments
validate that our technique can significantly improve the
efficiency of debugging.
</div>
<li>Paper: accepted to <a
href="https://dl.acm.org/citation.cfm?id=2631833">ISSTA'14
DS</a>, <a href="https://dl.acm.org/citation.cfm?id=2610400">ISSTA'14</a>,
<a href="https://dl.acm.org/citation.cfm?id=2984005">OOPSLA'16</a>.
</li>
<li>Code: released via <a
href="https://z_zhiqiang@bitbucket.org/z_zhiqiang/hi">Bitbucket</a>.
</li>
</ul></li>
<br>
<li><b>Semantics-directed Specification Mining</b>
<ul>
<li onclick="myOldFunction('specmine')">Abstract: <u>click</u></li>
<div id="specmine" class="oldcontent">
To tackle the lack of precise and complete
specifications, specification mining is proposed to
automatically infer software behavior from the execution
traces as specifications. The majority of these
specification mining approaches adopt a statistical
technique, and share a common assumption: <em>significant
program properties occur frequently</em>. Due to the presence of
semantically insignificant events, a great number of
meaningless specifications could be produced by directly
mining frequent patterns over the raw execution traces. This
severely affects the efficiency and effectiveness of
specification mining. To address the lack of semantic
significance and further improve the efficiency of
specification mining, we introduce semantics information to
refine the execution traces before mining, and propose a <em>semantics-directed
specification mining</em> framework to discover semantically
significant specifications from execution traces. We propose
the respective semantics analysis according to user-specific
semantics to extract semantically relevant sequences from
raw execution traces, and then perform frequent pattern
mining on these sequences to generate semantically
significant specifications. We develop a particular system
called <em>dataflow sensitive specification mining</em>
where dataflow semantics is considered. The experimental
results indicate that our approach can efficiently discover
semantically significant specifications.
</div>
<li>Paper: accepted to <a
href="https://link.springer.com/chapter/10.1007/978-3-642-41202-8_4">ICFEM'13</a>.
</li>
<li>Code: released via <a
href="https://z_zhiqiang@bitbucket.org/z_zhiqiang/dfsspecminer">Bitbucket</a>.
</li>
</ul></li>
</ul>
<h3 style="color: darkblue">Tools</h3>
<ul type="disc">
<li class="MsoNormal"
style="mso-margin-top-alt: auto; mso-margin-bottom-alt: auto; mso-list: l3 level1 lfo6; tab-stops: list .5in"><a
href="https://github.com/Graspan"> Graspan:</a> a disk-based
parallel program analysis engine for large-scale code</li>
<li class="MsoNormal"
style="mso-margin-top-alt: auto; mso-margin-bottom-alt: auto; mso-list: l3 level1 lfo6; tab-stops: list .5in"><a
href="https://bitbucket.org/z_zhiqiang/jsampler">
JSampler:</a> a sampled predicate-based instrumentor for Java</li>
</ul>
<!-- <h3 style="color: darkblue">Grants</h3> -->
</div>
<div id="Publications" class="tabcontent">
<h3 style="color: darkblue">Publications</h3>
<ul type="disc">
<li style="margin-bottom: 10px;"><strong>Graspan:
A Single-machine Disk-based Graph System for Interprocedural
Static Analyses of Large-scale Systems Code</strong> [<a href="">pdf</a>]
[<a href="">slides</a>] <br> by Kai Wang, Aftab Hussain,
<u>Zhiqiang Zuo</u>, Guoqing (Harry) Xu and Ardalan Amiri
Sani. <br> In <i>Proceedings of the 22nd ACM
International Conference on Architectural Support for
Programming Languages and Operating Systems</i>, <a
href="http://novel.ict.ac.cn/ASPLOS2017/index.html">(ASPLOS'17)</a>,
Xi'an, China, April 8 - 12, 2017. <br></li>
<li style="margin-bottom: 10px;"><strong>Low-Overhead
and Fully Automated Statistical Debugging with Abstraction
Refinement</strong> [<a
href="http://dl.acm.org/citation.cfm?id=2984005">pdf</a>] [<a
href="">slides</a>] <br> by <u>Zhiqiang Zuo</u>, Lu Fang,
Siau-Cheng Khoo, Guoqing (Harry) Xu and Shan Lu. <br> In
<i>Proceedings of the ACM SIGPLAN Conference on
Object-Oriented Programming Systems, Languages, and
Applications</i>, <a
href="http://2016.splashcon.org/track/splash-2016-oopsla">(OOPSLA'16)</a>,
Amsterdam, The Netherlands, Oct. 30 - Nov. 4, 2016. <br></li>
<li style="margin-bottom: 10px;"><strong>Refinement
Techniques in Mining Software Behavior</strong> [<a
href="https://drive.google.com/file/d/0B58Jj9Us3ouQTjFScnNqSmloSjg/view?usp=sharing">pdf</a>]
<br> by <u>Zhiqiang Zuo</u>. <br> <i>Dissertation</i>,
February 2015. <br></li>
<li style="margin-bottom: 10px;"><strong>Iterative
Statistical Bug Isolation via Hierarchical Instrumentation</strong> [<a
href="https://drive.google.com/file/d/0B58Jj9Us3ouQOEJ0Z0hGSGpFYVU/edit?usp=sharing">pdf</a>]
<br> by <u>Zhiqiang Zuo</u> and Siau-Cheng Khoo. <br>
In <i>DSpace at School of Computing, NUS</i>, <a
href="https://dl.comp.nus.edu.sg/jspui/handle/1900.100/4666">(TRC7-14)</a>.
<br></li>
<li style="margin-bottom: 10px;"><strong>Efficient
Predicated Bug Signature Mining via Hierarchical
Instrumentation</strong> [<a
href="https://drive.google.com/file/d/0B58Jj9Us3ouQb3NKRTVnMGRnblE/edit?usp=sharing">pdf</a>]
[<a href="https://www.slideshare.net/secret/A4Wuqx5z2T0LIy">slides</a>]
<br> by <u>Zhiqiang Zuo</u>, Siau-Cheng Khoo and
Chengnian Sun. <br> In <i>Proceedings of the 2014
International Symposium on Software Testing and Analysis</i>, <a
href="http://issta2014.org/index.html">(ISSTA'14)</a>, San
Jose, CA, USA, July 21-25, 2014. <br></li>
<li style="margin-bottom: 10px;"><strong>Efficient
Statistical Debugging via Hierarchical Instrumentation</strong> [<a
href="https://drive.google.com/file/d/0B58Jj9Us3ouQSnlBWGdjTGgtaDA/edit?usp=sharing">pdf</a>]
[<a href="https://www.slideshare.net/secret/fv6CxnVaRf34JH">slides</a>]
<br> by <u>Zhiqiang Zuo</u>. <br> In <i>Proceedings
of the 2014 International Symposium on Software Testing and
Analysis</i>, <a href="http://issta2014.org/doctoral.html">(ISSTA'14
Doctoral Symposium)</a>, San Jose, CA, USA, July 21-25, 2014. <br>
</li>
<li style="margin-bottom: 10px;"><strong>Mining
Dataflow Sensitive Specifications</strong> [<a
href="https://drive.google.com/file/d/0B58Jj9Us3ouQajJpUWxnYTJNWUE/edit?usp=sharing">pdf</a>]
[<a href="https://www.slideshare.net/secret/ilh4sYuphCgh2u">slides</a>]
<br> by <u>Zhiqiang Zuo</u> and Siau-Cheng Khoo. <br>
In <i>Proceedings of the 15th International Conference on
Formal Engineering Methods</i>, <a
href="http://www.cs.auckland.ac.nz/research/conferences/icfem2013/">(ICFEM'13)</a>,
Queenstown, New Zealand, Oct. 29 - Nov. 1, 2013. <br></li>
</ul>
<h3 style="color: darkblue">Tutorials</h3>
<ul type="disc">
<li style="margin-bottom: 10px;"><strong>"Systemized"
Program Analyses – A "Big Data" Perspective on Static
Analysis Scalability</strong> [<a
href="http://www.ics.uci.edu/~guoqingx/asplos-tutorial/main.html">link</a>]
[<a href="">slides</a>] <br> by Guoqing (Harry) Xu and <u>Zhiqiang
Zuo</u>.<br> <i>The 22nd ACM International Conference on
Architectural Support for Programming Languages and Operating
Systems</i>, <a
href="http://novel.ict.ac.cn/ASPLOS2017/index.html">(ASPLOS'17)</a>,
Xi'an, China, April 8 - 12, 2017. <br></li>
</ul>
</div>
<span style="display: block; height: 40pt;"></span>
<table class="MsoNormalTable" border="0" cellpadding="0"
width="100%"
style="width: 100.0%; mso-cellspacing: 1.5pt; mso-yfti-tbllook: 1184; mso-padding-alt: 0in 5.4pt 0in 5.4pt">
<tbody>
<tr
style="mso-yfti-irow: 0; mso-yfti-firstrow: yes; mso-yfti-lastrow: yes">
<td width="23%"
style="width: 23.54%; padding: .75pt .75pt .75pt .75pt">
</td>
<td width="53%"
style="width: 53.54%; padding: .75pt .75pt .75pt .75pt">
<div class="footer">
<center>
<font color="black" size="2"> Copyright &copy
Zhiqiang Zuo 2017 <br> Last update: October, 2017
</font>
<p class="MsoNormal">
<i><font color="black">"Simplicity is the
ultimate sophistication." -- Leonardo da Vinci </font></i>
</p>
</center>
</div> <!--end of footer-->
</td>
<td width="23%"
style="width: 23.74%; padding: .75pt .75pt .75pt .75pt"
align="right">
<div id="clustrmaps-widget"></div> <a
href="https://clustrmaps.com/site/17e3l"
title="Visit tracker"><img
src="//www.clustrmaps.com/map_v2.png?d=gVXCGJo41tXWbFJHdmI574i_AsrN1PWKXm1VIpVJI6E&cl=ffffff" /></a>
</td>
</tr>
</tbody>
</table>
</td>
</tr>
</tbody>
</table>
<p class="MsoNormal">
<span style="color: windowtext"><o:p>&nbsp;</o:p></span>
</p>
</div>
</div>
<script>
function openCity(evt, cityName) {
var i, tabcontent, tablinks;
tabcontent = document.getElementsByClassName("tabcontent");
for (i = 0; i < tabcontent.length; i++) {
tabcontent[i].style.display = "none";
}
tablinks = document.getElementsByClassName("tablinks");
for (i = 0; i < tablinks.length; i++) {
tablinks[i].className = tablinks[i].className.replace(
" active", "");
}
document.getElementById(cityName).style.display = "block";
evt.currentTarget.className += " active";
}
// Get the element with id="defaultOpen" and click on it
document.getElementById("defaultOpen").click();
</script>
<script>
function myOldFunction(projectName) {
var x = document.getElementById(projectName);
if (x.style.display === "block") {
x.style.display = "none";
} else {
x.style.display = "block";
}
}
function myNewFunction(projectName) {
var x = document.getElementById(projectName);
if (x.style.display === "none") {
x.style.display = "block";
} else {
x.style.display = "none";
}
}
</script>
</body>
</html>
HTML
1
https://gitee.com/z-zhiqiang/z-zhiqiang.github.io.git
git@gitee.com:z-zhiqiang/z-zhiqiang.github.io.git
z-zhiqiang
z-zhiqiang.github.io
z-zhiqiang.github.io
master

搜索帮助